,
,
,
,
και
αντίστοιχα.Συντονιστής: Καρδαμίτσης Σπύρος
,
,
,
,
και
αντίστοιχα.
αλλά χρησιμοποίησες το
που είναι ισχυρότερο. Ή αλλιώς, το
με το επιτρεπτό
είναι ισοδύναμο του
.
είναι τετριμμένη και, άλλωστε, γνωστότατη) σκέφθηκα ότι κάτι πονηρό θα έχεις στον νου. Φαίνεται ότι έπεσα έξω.Ο σκοπός μου ήταν να κάνω μια υπερβολικά συμπυκνωμένη και σιωπηρή πρόταση εναλλακτικής διδασκαλίας της διαίρεσης, για την επιβεβαίωση ή κατάρριψη του αλγορίθμου που βρίσκεται στο ποστ #2 σχετικά με το, αν με κατάλληλες αναλογίες είναι κατανοητότερος σε αρχάριο με κενά όπως τα προαναφερόμενα της εκφώνησης.Mihalis_Lambrou έγραψε: ↑Δευ Ιαν 13, 2025 11:29 amΌταν είδα την άσκηση (που με χρήση τουείναι τετριμμένη και, άλλωστε, γνωστότατη) σκέφθηκα ότι κάτι πονηρό θα έχεις στον νου. Φαίνεται ότι έπεσα έξω.
στο παρακάτω διάγραμμα ροής συμβολίζεται με
και ο διαιρέτης
, τότε κατεβαίνοντας προς τα κάτω θα έχεις αρχικά "μετρητή =0". Έτσι στο ερώτημα "μετρητής
διαιρέτη", η απάντηαη είναι ΝΑΙ, οπότε στο επόμενο βήμα θα γίνει "μετρητής = διαιρετέος =5". Το επόμενο βήμα είναι "μετρητής = μετρητής + 1=6". Κατόπιν έρχεται η ερώτηση "μετρητής
διαιρέτη" που η απάντηση είναι ΝΑΙ, οπότε στο επόμενο βήμα θα γίνει "μετρητής = διαιρετέος =5". Ξαναβρήμαμε δηλαδή την ίδια τιμή του μετρητή. εδώ
και άρα το σύστημα θα κάνει loop επ' άπειρον. Δηλαδή δεν θα βγάλει ποτέ απάντηση.Εν συντομία ο αλγόριθμος, λειτουργεί όπως περιγράφεται στο hide, αλλά και παρακάτω δίνεται ισοδύναμος κώδικας στην Java, που μπορείτε να δοκιμάσετε να τον τρέξετε π.χ. στο Online Java Compiler - Programiz.Mihalis_Lambrou έγραψε: ↑Δευ Ιαν 13, 2025 7:42 pmΕκτός ότι κάνεις τα εύκολα, δύσκολα, με πάρα πολλά περιττά, δεν βλέπω να λειτουργεί ο παραπάνω αλγόριθμός.
Για παράδειγμα αν ο διαιρετέος είναικαι ο διαιρέτης
, τότε κατεβαίνοντας προς τα κάτω θα έχεις αρχικά "μετρητή =0". Έτσι στο ερώτημα "μετρητής
διαιρέτη", η απάντηαη είναι ΝΑΙ, οπότε στο επόμενο βήμα θα γίνει "μετρητής = διαιρετέος =5". Το επόμενο βήμα είναι "μετρητής = μετρητής + 1=6". Κατόπιν έρχεται η ερώτηση "μετρητής
διαιρέτη" που η απάντηση είναι ΝΑΙ, οπότε στο επόμενο βήμα θα γίνει "μετρητής = διαιρετέος =5". Ξαναβρήμαμε δηλαδή την ίδια τιμή του μετρητή. εδώ
και άρα το σύστημα θα κάνει loop επ' άπειρον. Δηλαδή δεν θα βγάλει ποτέ απάντηση.
και
σε ό,τι τιμές θέλετε για διαιρετέο και διαιρέτη, αντίστοιχα.Κώδικας: Επιλογή όλων
class Main {
final static int DIVIDEND = 5;
final static int DIVISOR = 2;
static int div_add_loop(int dividend, int divisor) {
if (divisor == 0)
System.exit(1);
int quotient = 0, temporary = 0, counter = 0;
while (counter != divisor)
if (counter++ == dividend)
return quotient;
while (true) {
temporary += divisor;
counter = 0;
while (counter != divisor)
if (temporary + counter++ == dividend)
return ++quotient;
quotient++;
}
}
public static void main(String[] args) {
System.out.print(div_add_loop(DIVIDEND, DIVISOR));
}
}Έχεις δίκιο, ο αλγόριθμος λειτουργεί.
, είναι ουσιαστικά τετριμμένος. Είναι ερώτημα αν χρειάζεται να κάνουμε τα εύκολα, δύσκολα.Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης