Τελευταία μηνύματα

#81
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από pgrontas - 23 Νοε 2025, 06:57:00 ΜΜ
Δεν μπορούμε να ξέρουμε Νίκο, γιατί έβγαλε αυτή τη λύση.

Μία θεωρία είναι αυτό που είπες, ότι εμφανίζεται πιο πολύ στα δεδομένα μάθησης.
Μία άλλη θεωρία ότι είναι ο κώδικας που σου έβγαλε είναι πιο κοντά στην εκφώνηση λεκτικά π.χ.  το "θα ολοκληρώνεται όταν δοθεί για όνομα του μαθητή η λέξη 'ΤΕΛΟΣ' " ταιριάζει πιο πολύ με το "if  == ΤΕΛΟΣ και break"  παρά με το "while !="
Μία άλλη θεωρία είναι ότι είναι πιο απλό, άρα πιο εύκολο (φθηνό) να παραχθεί.

Τα LLMs είναι από τη φύση τους black boxes και τα διάφορα optimizations που τους βάζουν περιπλέκουν την κατάσταση ακόμα περισσότερο.
#82
Στον Διερμηνευτή της ΓΛΩΣΣΑ έκδ.1.5.1.3 σας το επιτρέπει;
#83
Βεβαίως.

ΔΙΑΔΙΚΑΣΙΑ ΜΕΝΕΛΑΟΣ( )
ΑΡΧΗ
  ΓΡΑΨΕ 'ΜΗ ΤΟ ΚΛΕΙΣΕΙΣ...'
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


Σελ 178 στον ορισμό " Η λίστα παραμέτρων δεν είναι υποχρεωτική."
#84
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από nikolasmer - 23 Νοε 2025, 06:03:22 ΜΜ
Δεν έχω εξετάσει την ορθότητα της λύσης απλά αναρωτιέμαι γιατί το LLM προτείνει αυτό σαν λύση. Οι προτροπές που του έδωσε δεν ήταν προς αυτή την κατεύθυνση . Μάλλον ήταν "λύσε μου αυτό το θέμα" και μόνο αυτό και μετά του ζήτησα χωρίς λίστες. Αυτό το γιατί με τρώει. Γιατί έχει μάθει σε αυτό τον τρόπο λύσης; Είναι πιο αποδοτικός; Ακολουθείται και εφαρμόζεται από προγραμματιστές ανα την υφήλιο;
Just that.



Στη συνομιλία όταν του ζήτησα να κάνει μετατροπή σε ΓΛΩΣΣΑ μου είπε: "... Σε ΓΛΩΣΣΑ ΔΕΝ υπάρχει
while True
, οπότε η ακριβής ισοδύναμη μεταφορά γίνεται με ατέρμονη επανάληψη και έλεγχο διακοπής με flag/έλεγχο στο τέλος......"
#85
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από nikolasmer - 23 Νοε 2025, 05:58:23 ΜΜ
και χωρίς λίστες
LIMIT = 10.30
MAX_TRIES = 5

total_students = 0          # σύνολο μαθητών
qualified_students = 0      # πόσοι προκρίθηκαν

best1_name = ""
best2_name = ""
best1_score = -1
best2_score = -1

while True:
    name = input("Δώσε όνομα μαθητή (ή ΤΕΛΟΣ): ")

    if name.upper() == "ΤΕΛΟΣ":
        break

    total_students += 1

    best_throw = 0
    qualified = False
    tries_used = 0

    # έως 5 προσπάθειες
    for i in range(1, MAX_TRIES + 1):
        distance = float(input(f"Προσπάθεια {i} σε μέτρα: "))
        tries_used += 1

        if distance > best_throw:
            best_throw = distance

        if distance >= LIMIT:
            qualified = True
            break

    # --- Αποτελέσματα για τον μαθητή ---
    if qualified:
        print(f"{name}: ΠΡΟΚΡΙΝΕΤΑΙ με {best_throw} μέτρα σε {tries_used} προσπάθειες.")
        qualified_students += 1
    else:
        print(f"{name}: ΔΕΝ ΠΡΟΚΡΙΝΕΤΑΙ. Καλύτερη επίδοση: {best_throw} μέτρα.")

    # --- Ενημέρωση δύο καλύτερων επιδόσεων ---
    if best_throw > best1_score:
        best2_score = best1_score
        best2_name = best1_name
        best1_score = best_throw
        best1_name = name
    elif best_throw > best2_score:
        best2_score = best_throw
        best2_name = name


# --- Δύο καλύτερες επιδόσεις ---
print("\n--- ΔΥΟ ΚΑΛΥΤΕΡΕΣ ΕΠΙΔΟΣΕΙΣ ---")
if best1_score >= 0:
    print(f"1η καλύτερη: {best1_name} με {best1_score} μέτρα")
if best2_score >= 0:
    print(f"2η καλύτερη: {best2_name} με {best2_score} μέτρα")

# --- Ποσοστό προκριθέντων ---
if total_students > 0:
    percentage = qualified_students * 100 / total_students
else:
    percentage = 0

print(f"\nΠοσοστό μαθητών που προκρίθηκαν: {percentage:.2f}%")
#86
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από nikolasmer - 23 Νοε 2025, 05:56:29 ΜΜ
Αντιγράφω απο GPT
LIMIT = 10.30   # όριο πρόκρισης
MAX_TRIES = 5   # μέγιστες προσπάθειες

students = []   # λίστα με στοιχεία (όνομα, καλύτερη επίδοση, προσπάθειες, προκρίθηκε)

while True:
    name = input("Δώσε όνομα μαθητή (ή ΤΕΛΟΣ): ")
    if name.upper() == "ΤΕΛΟΣ":
        break

    best_throw = 0
    qualified = False
    tries_used = 0

    # Διαβάζουμε μέχρι 5 προσπάθειες
    for i in range(1, MAX_TRIES + 1):
        distance = float(input(f"Προσπάθεια {i} σε μέτρα: "))
        tries_used += 1
        if distance > best_throw:
            best_throw = distance

        if distance >= LIMIT:
            qualified = True
            break   # σταματάει όταν περάσει το όριο

    students.append((name, best_throw, tries_used, qualified))


# --- Αποτελέσματα για κάθε μαθητή ---
print("\n--- ΑΠΟΤΕΛΕΣΜΑΤΑ ΜΑΘΗΤΩΝ ---")
for name, best, tries, qualified in students:
    if qualified:
        print(f"{name}: ΠΡΟΚΡΙΝΕΤΑΙ με {best} μέτρα σε {tries} προσπάθειες.")
    else:
        print(f"{name}: ΔΕΝ ΠΡΟΚΡΙΝΕΤΑΙ. Καλύτερη επίδοση: {best} μέτρα.")


# --- Δύο καλύτερες επιδόσεις ---
print("\n--- ΔΥΟ ΚΑΛΥΤΕΡΕΣ ΕΠΙΔΟΣΕΙΣ ---")

# ταξινόμηση κατά επίδοση (φθίνουσα)
sorted_students = sorted(students, key=lambda x: x[1], reverse=True)

top2 = sorted_students[:2]

for s in top2:
    print(f"{s
}: {s[1]} μέτρα")
# --- Ποσοστό προκριθέντων ---
total = len(students)
qualified_count = sum(1 for s in students if s[3] == True)
if total > 0:
    percentage = (qualified_count / total) * 100
else:
    percentage = 0
print(f"\nΠοσοστό μαθητών που προκρίθηκαν: {percentage:.2f}%")

Αυτή είναι η λύση για το θέμα Γ 2025
#87
Τμηματικός προγραμματισμός / Διαδικασία χωρίς παραμέτρους
Τελευταίο μήνυμα από getsas - 23 Νοε 2025, 05:27:00 ΜΜ
Στην ΓΛΩΣΣΑ είναι αποδεκτή μία διαδικασία χωρίς παραμέτρους; 
#88
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από petrosp13 - 23 Νοε 2025, 04:34:22 ΜΜ
Ποιος είναι ο λόγος να ελέγξεις κάτι εντός επανάληψης και να χρησιμοποιήσεις λογική μεταβλητή αντί να γράψεις κατευθείαν την συνθήκη τερματισμού/επανάληψης;
Η μικρότερη συνθήκη;
Έτσι προστίθενται αχρείαστες εντολές εντός επανάληψης
Αν και γενικά όλα αυτά είναι υποκειμενικά όπως τα περισσότερα στον προγραμματισμό
#89
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από pgrontas - 23 Νοε 2025, 01:39:05 ΜΜ
Νικο, δεν ξέρω κάτι.
Αυτό που με προβληματίζει είναι ότι δε σε πετάει κατευθείαν έξω όπως η break, αλλά περιμένεις να φτάσεις στη συνθήκη. Ανάλογα με τις ενδιάμεσες εντολές ενδεχομένως να υπάρχει κίνδυνος να εκτεθείς σε λογικά λάθη.
Αυτό που θα πρέπει να καλλιεργήσουμε είναι το να γράφουν τις εντολές που επηρεάζουν τη συνθήκη, όσο πιο κοντά σε αυτή γίνεται. Και τότε δε θα έχει τόσο σημασία η χρήση της λογικής μεταβλητής.
#90
Δομή επανάληψης / Απ: Λογική συνθήκη για τερματι...
Τελευταίο μήνυμα από nikolasmer - 23 Νοε 2025, 01:30:57 ΜΜ
Για το δεύτερο που λες Παναγιώτη με ενδιαφέρει . Αξίζει να το προσπαθήσουμε ή διδακτικά θα δυσκολέψει το μαθητή. Έχουμε κάτι σχετικό καμία έρευνα κάτι , που να θέλει αυτό τον τρόπο να είναι καλύτερος ;