Προς το περιεχόμενο

Ταχύτητα αλγορίθμου -- Πράξεις δυνάμεων με κατάληξη 5


Επισκέπτης

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

Ταχύτητα αλγορίθμου

Απόσπασμα αρχείου

Tony_Dim -- Θέμα 9. Πράξεις δυνάμεων με κατάληξη 5.

Δίνονται δύο αλγόριθμοι Α και Β που υπολογίζουν μόνο τετράγωνα αριθμών που λήγουν σε 5.

Δηλαδή αριθμούς όπως.: 215, 325, 45, 125, 1235, 12345, 1234565, 234567895, κλπ

Προσοχή.:

--Ο αλγόριθμος Α, απαιτεί την πληκτρολόγηση ολόκληρου του αριθμού.

--Ο αλγόριθμος Β, απαιτεί την πληκτρολόγηση του αριθμού χωρίς την κατάληξη 5.

Παράδειγμα.:

Έστω ο αριθμός 25^2

--Στον αλγόριθμο Α θα πληκτρολογήσουμε 25 και θα πάρουμε το αποτέλεσμα 625

--Στον αλγόριθμο Β θα πληκτρολογήσουμε 2 και θα πάρουμε το αποτέλεσμα 625

Το αποτέλεσμα και για τους δύο αλγόριθμους είναι το ίδιο.

Το μόνο που πιθανόν αλλάζει σε μεγάλους αριθμούς, είναι ο χρόνος, καθώς στον Β αλγόριθμο ο αριθμός είναι 10 φορές μικρότερος.

Ζητούμενο λοιπόν, να ελεγχθεί η ταχύτητα εκτέλεσης για μεγάλους αριθμούς.

--Είναι πράγματι γρηγορότερος ο Β, ναι ή όχι??

 

 

Αλγόριθμος Α

 

//... tetragonatoy5_A

#include <stdio.h>

main()

{

system("chcp 1253>nul"); // Ελληνικά

int a, b;

printf("\n Δώσε ένα αριθμό που λήγει σε 5 \n");

scanf("%d", &a);

b=(a*a);

printf("\n Το τετράγωνο είναι %d ", b);

}

 

Αλγόριθμος Β

//... tetragonatoy5_Β

#include <stdio.h>

main()

{

system("chcp 1253>nul"); // Ελληνικά

int a, b;

printf("\n Δώσε ένα αριθμό που λήγει σε 5 χωρίς το 5 εε!!! \n");

scanf("%d", &a);

b=(a*a+a);

printf("\n Το τετράγωνο είναι %d25 ", b);

}

Επεξ/σία από Επισκέπτης
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Επισκέπτης
Αυτό το θέμα είναι πλέον κλειστό για περαιτέρω απαντήσεις.
  • Δημιουργία νέου...