ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 1 η

Σχετικά έγγραφα
ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 1 η

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 1 η

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 1 η

3 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΠΙΝΑΚΕΣ

1 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΑΛΓΟΡΙΘΜΟΙ

3 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΠΙΝΑΚΕΣ

3 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ - ΠΙΝΑΚΕΣ

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 3 η

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 3 η

2 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 2 η

Εύρεση ν-στού πρώτου αριθμού

3 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ

4.2 ΕΥΚΛΕΙΔΕΙΑ ΔΙΑΙΡΕΣΗ

1 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ (επανάληψη στη γλώσσα C & εισαγωγή στη γλώσσα C++)

Γ ε ν ι κ ό Λ ύ κ ε ι ο Ε λ ε υ θ ε ρ ο ύ π ο λ η ς. Α λ γ ό ρ ι θ μ ο ι

Αριθμητικά Συστήματα

1 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ (επανάληψη στη γλώσσα C & εισαγωγή στη γλώσσα C++)

Οι φυσικοί αριθμοί. Παράδειγμα

ΑΛΓΕΒΡΑ Α ΓΥΜΝΑΣΙΟΥ ΘΕΤΙΚΟΙ ΚΑΙ ΑΡΝΗΤΙΚΟΙ ΑΡΙΘΜΟΙ ΕΠΙΜΕΛΕΙΑ : ΧΑΛΑΤΖΙΑΝ ΠΑΥΛΟΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Οι Φυσικοί Αριθμοί. Παρατήρηση: Δεν στρογγυλοποιούνται αριθμοί τηλεφώνων, Α.Φ.Μ., κωδικοί αριθμοί κλπ. Πρόσθεση Φυσικών αριθμών

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 6 η

7. Αν υψώσουμε και τα δύο μέλη μιας εξίσωσης στον κύβο (και γενικά σε οποιαδήποτε περιττή δύναμη), τότε προκύπτει

2.1 ΠΡΑΞΕΙΣ ΚΑΙ ΟΙ ΙΔΙΟΤΗΤΕΣ ΤΟΥΣ

ΜΑΘΗΜΑΤΙΚΑ Α ΓΥΜΝΑΣΙΟΥ

Τμήμα Τεχνολόγων Γεωπόνων - Φλώρινα

2ογελ ΣΥΚΕΩΝ 2ογελ ΣΥΚΕΩΝ ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ Β Λυκει(ου ΠΟΛΥΩΝΥΜΙΚΕΣ ΣΥΝΑΡΤΗΣΕΙΣ

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΠΡΑΓΜΑΤΙΚΟΙ ΑΡΙΘΜΟΙ ΑΚΟΛΟΥΘΙΕΣ ΑΡΙΘΜΩΝ EΞΙΣΩΣΕΙΣ...47 ΠΡΟΛΟΓΟΣ... 9

Ας δούμε λίγο την θεωρία με την οποία ασχοληθήκαμε μέχρι τώρα.

ΛΥΣΕΙΣ ΤΩΝ ΑΣΚΗΣΕΩΝ ΕΠΑΝΑΛΗΨΗΣ ΓΙΑ ΤΙΣ ΓΙΟΡΤΕΣ (ΑΡΙΘΜΗΤΙΚΗ)

ΘΕΜΑ Α ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή

ΑΝΙΣΟΤΗΤΕΣ. Αν α-β>0 τότε α>β «Αν η διαφορά είναι θετικός αριθμός τότε ο πρώτος αριθμός δηλαδή το α είναι μεγαλύτερος από τον δεύτερο δηλαδή το β»

Αριθμητική Ανάλυση & Εφαρμογές

2. Να γράψετε έναν αριθμό που είναι μεγαλύτερος από το 3,456 και μικρότερος από το 3,457.

6. Αφού δημιουργήσετε ένα πίνακα 50 θέσεων με ονόματα μαθητών να τον ταξινομήσετε αλφαβητικά με την μέθοδο της φυσαλίδας

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης;

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ

Επιμέλεια: Σπυρίδων Τζινιέρης-ΘΕΩΡΙΑ ΚΛΑΣΜΑΤΩΝ ΓΙΑ ΤΗΝ Α ΓΥΜΝΑΣΙΟΥ ΘΕΩΡΙΑ ΚΛΑΣΜΑΤΩΝ Α ΓΥΜΝΑΣΙΟΥ

Υπολογιστικά & Διακριτά Μαθηματικά

ΜΑΘΗΜΑΤΙΚΑ Α ΓΥΜΝΑΣΙΟΥ

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 6 η

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

viii. Α[7] Α[1] Α[3] + Α[8] 2. Δίνεται οι παρακάτω πίνακες ακεραίων Α και Β

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

ΚΕΦΑΛΑΙΟ 2 ΔΙΑΤΑΞΕΙΣ, ΜΕΤΑΘΕΣΕΙΣ, ΣΥΝΔΥΑΣΜΟΙ

ΕΞΕΤΑΣΗ ΙΑΝΟΥΑΡΙΟΥ (28/1/2011)

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

4.2 ΔΙΑΙΡΕΣΗ ΠΟΛΥΩΝΥΜΩΝ

Χαρακτήρες διαιρετότητας ΜΚΔ ΕΚΠ Ανάλυση αριθμού σε γινόμενο πρώτων παραγόντων

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 8. Πότε το γινόμενο δύο ή περισσοτέρων αριθμών παραγόντων είναι ίσο με το μηδέν ;

Λύσεις θεμάτων επαναληπτικών πανελληνίων εξετάσεων 2014 Στο μάθημα: «Μαθηματικά και Στοιχεία Στατιστικής» Γενικής Παιδείας ΗΜΕΡΗΣΙΑ ΓΕ.Λ.

m + s + q r + n + q p + s + n, P Q R P Q P R Q R F G

ΕΚΦΩΝΗΣΕΙΣ. β. Να γράψετε αναλυτικά τα μειονεκτήματα της χρήσης των πινάκων. γ. Να γράψετε ονομαστικά τις τυπικές επεξεργασίες των πινάκων.

Άσκηση 1 (κλιμακωτή χρέωση) Ένα γραφείο ενοικίασης αυτοκινήτων εφαρμόζει την παρακάτω τιμολογιακή πολιτική: Πάγιο 30 ευρώ

τον αριθμητή 8 την κλασματική γραμμή τον παρανομαστή

Μεταθέσεις και πίνακες μεταθέσεων

Συνδυαστική Απαρίθμηση

* * * ( ) mod p = (a p 1. 2 ) mod p.

Μη γράφετε στο πίσω μέρος της σελίδας

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

ΜΕΘΟΔΟΛΟΓΙΕΣ & ΑΣΚΗΣΕΙΣ ΓΙΑ ΤΗΝ ΑΛΓΕΒΡΑ ΤΗΣ Α ΛΥΚΕΙΟΥ

Συστήματα Αρίθμησης. Συστήματα Αρίθμησης 1. PDF created with FinePrint pdffactory Pro trial version

Μαθηματικά. Ενότητα 1: Οι Αριθμοί. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Καθηγητής Ε. Χ. ΖΙΟΥΛΑΣ

ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ. 1ο ΓΕΛ ΠΕΥΚΗΣ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ B' ΤΕΤΡΑΜΗΝΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΕΝΟΤΗΤΑ 2 ΠΡΟΣΘΕΣΗ ΚΑΙ ΑΦΑΙΡΕΣΗ ΜΕΧΡΙ ΤΟ 100

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Ασκήσεις και δραστηριότητες

Μαθηματικά. Ενότητα 2: Δεκαδικοί αριθμοί, κλάσματα, δυνάμεις, ρίζες και ποσοστά. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

1 Η εναλλάσσουσα ομάδα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΞΕΤΑΣΗ (14/9/2012)

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

OΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

Δηλαδή η ρητή συνάρτηση είναι πηλίκο δύο ακέραιων πολυωνύμων. Επομένως, το ζητούμενο ολοκλήρωμα είναι της μορφής

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

1. * Ο αριθμός, ν Ν, είναι ανάγωγο κλάσμα για κάθε ν Ν. Σ Λ 2. * Οι αριθμοί 2ν και 2ν + 2 είναι διαδοχικοί άρτιοι για κάθε ν Ν.

ΑΡΧΗ 1ης ΣΕΛΙΔΑΣ. Για i από 1 μέχρι Μ Εμφάνισε A[4,i] Τέλος_επανάληψης. (μονάδες 6) ΤΕΛΟΣ 1ης ΑΠΟ 7 ΣΕΛΙΔΕΣ

ΘΕΩΡΙΑ Β ΓΥΜΝΑΣΙΟΥ. Μια παράσταση που περιέχει πράξεις με μεταβλητές (γράμματα) και αριθμούς καλείται αλγεβρική, όπως για παράδειγμα η : 2x+3y-8

Δομές Δεδομένων. Τι είναι η δομή δεδομένων; Έστω η ακολουθία αριθμών: 8, 10,17,19,22,5,12 Λογικό Επίπεδο. Φυσικό Επίπεδο RAM. Ταξινομημένος.

ΚΕΦΑΛΑΙΟ 5 ΑΚΟΛΟΥΘΙΕΣ ΑΡΙΘΜΗΤΙΚΗ ΓΕΩΜΕΤΡΙΚΗ ΠΡΟΟΔΟΣ

Αριθμητική Ανάλυση και Εφαρμογές

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο

Συνδυαστική Απαρίθμηση

Λέγονται οι αριθμοί που βρίσκονται καθημερινά στη φύση, γύρω μας. π.χ. 1 μήλο, 2 παιδιά, 5 αυτοκίνητα, 100 πρόβατα, δέντρα κ.λ.π.

ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ Α ΓΥΜΝΑΣΙΟΥΣΤΗΝ ΑΛΓΕΒΡΑ. Άρτιοι αριθμοί ονομάζονται οι αριθμοί που διαιρούνται με το 2 και περιττοί εκείνοι

4. Επιλογή και Επανάληψη

Α Γυμνασίου, Μέρο Α, Άλγεβρα, Κεφάλαιο 7, Θετικοί και Αρνητικοί Αριθμοί, Α.7.8. Δυνάμει ρητών αριθμών με εκθέτη φυσικό, Α.7.9. Δυνάμει ρητών αριθμών

4 ο ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ

ΜΑΘΗΜΑΤΙΚΑ Α ΓΥΜΝΑΣΙΟΥ

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

ΕΝΟΤΗΤΑ 13 ΔΙΑΙΡΕΣΗ. Αρ2.12 Κατανοούν την προπαίδεια του πολλαπλασιασμού και τη διαίρεση ως αντίστροφη πράξη του πολλαπλασιασμού.

Transcript:

Δ.Π.Θ. - Πολυτεχνική Σχολή Τμήμα Μηχανικών Παραγωγής & Διοίκησης Ακαδ. έτος 2016-2017 Τομέας Συστημάτων Παραγωγής Εξάμηνο Β Αναπληρωτής Καθηγητής Στέφανος Δ. Κατσαβούνης ΜΑΘΗΜΑ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (ΓΛΩΣΣΑ C) 14/02/2017 ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 1 η ΑΣΚΗΣΗ 1 Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα υπολογίζει και θα εμφανίζει το αποτέλεσμα από το παρακάτω άθροισμα με ακρίβεια 10-2 και τουλάχιστον 30 όρους 1 3 3 5 5 7 2! 3! 4! Μετά τον υπολογισμό και την εμφάνιση του αποτελέσματος να εμφανίσετε το πλήθος των όρων που χρησιμοποιήθηκαν στον υπολογισμό. ΑΣΚΗΣΗ 2 Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα υπολογίζει και θα εμφανίζει το αποτέλεσμα από το παρακάτω άθροισμα με ακρίβεια 10-2 και τουλάχιστον 10 όρους 1 2! 3! 4! 23 3 4 45 56 Μετά τον υπολογισμό και την εμφάνιση του αποτελέσματος να εμφανίσετε το πλήθος των όρων που χρησιμοποιήθηκαν στον υπολογισμό. ΑΣΚΗΣΗ 3 Για ορισμένους θετικούς ακέραιους τριψήφιους αριθμούς ισχύει η εξής ιδιότητα: 1. υπολογίζουμε το άθροισμα των κύβων των ψηφίων του αριθμού 2. υπολογίζουμε το άθροισμα των ψηφίων του αριθμού 3. υπολογίζουμε τη διαφορά των τιμών που προέκυψαν από τα βήματα (1) και (2) και στη συνέχεια την τετραγωνική ρίζα του αριθμού που προκύπτει από την αφαίρεση. 4. υπολογίζουμε τον διψήφιο αριθμό που προκύπτει από τα 2 πρώτα ψηφία του αρχικού αριθμού και από αυτόν αφαιρούμε το τελευταίο ψηφίο του αρχικού αριθμού Οι αριθμοί από τα βήματα (3) και (4) είναι ίσοι! 1 5 3 1 5 3 15 3 3 3 3 Π.χ. ο αριθμός 153 : Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει, έναν σε κάθε γραμμή, όλους τους θετικούς τριψήφιους ακέραιους αριθμούς που πληρούν την παραπάνω ιδιότητα. 1

ΑΣΚΗΣΗ 4 Ο αριθμός 24 έχει την παρακάτω ιδιότητα. Εάν επιλέξουμε έναν οποιονδήποτε πρώτο (prime) αριθμό, μεγαλύτερο του 3, τον υψώσουμε στο τετράγωνο, και από το αποτέλεσμα που θα προκύψει αφαιρέσουμε την μονάδα τότε το 24 είναι πάντοτε ένας διαιρέτης αυτού του αποτελέσματος. Π.χ. Επιλέγω τον 17 (είναι πρώτος αριθμός). Το τετράγωνό του είναι 289. Αφαιρώντας 1 προκύπτει 288. Η διαίρεση 288/24 δίνει αποτέλεσμα 12. Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα επιβεβαιώνει την παραπάνω ιδιότητα για όλους τους πρώτους αριθμούς που είναι μεγαλύτεροι του 3 και μικρότεροι του 100. (ΥΠΟΔΕΙΞΗ : Το παρακάτω τμήμα κώδικα σε γλώσσα C βρίσκει αν ένας ακέραιος και θετικός αριθμός k 2 είναι πρώτος (prime) αριθμός ). i=2; flag=0; while ((i<=k/2) && (flag==0)) { if (k%i==0) flag=1; i++; } if (flag==0) printf("number %4d is prime \n",k); ΑΣΚΗΣΗ 5 Να γραφεί πρόγραμμα σε γλώσσα C που θα υπολογίζει και θα εμφανίζει το αποτέλεσμα από το παρακάτω άθροισμα : 1 1 1 1 1 S 1 3 5 7 41 43 Μετά τον υπολογισμό και την εμφάνιση του αποτελέσματος να βρεθεί και να εμφανιστεί η διαφορά του με τον αριθμό. ΑΣΚΗΣΗ 6 Να γραφεί πρόγραμμα σε γλώσσα C που θα υπολογίζει και θα εμφανίζει το αποτέλεσμα από το παρακάτω άθροισμα : 1 1 1 S 61 4 9 900 Μετά τον υπολογισμό και την εμφάνιση του αποτελέσματος να βρεθεί και να εμφανιστεί η διαφορά του με τον αριθμό. ΑΣΚΗΣΗ - 7 Για ορισμένους ακέραιους και θετικούς αριθμούς ισχύει η παρακάτω ιδιότητα: Το άθροισμα που προκύπτει από την επαναλαμβανόμενη πρόσθεση είτε των ψηφίων του αριθμού είτε από την πρόσθεση του νέου αριθμού σε αυτόν που δημιουργήθηκε αμέσως πριν, ισούται με τον αριθμό που εξετάζεται π.χ. για τον αριθμό 75 : 7 + 5 = 12, 5 +12 = 17, 12 +17 = 29, 17 + 29 = 46, 29 + 46 = 75 Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει όλους τους αριθμούς που πληρούν αυτήν την ιδιότητα και είναι μικρότεροι του 1000. Στο τέλος θα πρέπει να εμφανίζεται και το πλήθος των αριθμών αυτών (ΥΠΟΔΕΙΞΗ: μερικοί τέτοιοι αριθμοί είναι οι : 14, 19, 28, 47,.) 2

ΑΣΚΗΣΗ 8 Να γραφεί πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει όλες τις τετράδες ακεραίων αριθμών, έστω,,,, που : ανήκουν στο διάστημα [1,20], είναι διαφορετικές μεταξύ τους (δηλαδή να αποφύγετε την επανάληψη τετράδων όπως,,,,,,,,,,, κλπ), και ικανοποιούν την ιδιότητα: 2 2 2 2 Παράδειγμα : 1 2 +4 2 +8 2 =9 2, αλλά όχι 1 2 +2 2 +2 2 =3 2, διότι επαναλαμβάνεται το 2. Επίσης: 1. Να βρεθεί και να εμφανιστεί το πλήθος αυτών των διαφορετικών μεταξύ τους τετράδων. 2. Να δημιουργηθεί ένας μονοδιάστατος αριθμητικός πίνακας ακεραίων που θα περιέχει τις πρώτες 10 τέτοιες τετράδες (αν υπάρχουν λιγότερες τότε θα περιέχει ακριβώς όσες υπάρχουν) ΑΣΚΗΣΗ - 9 Ορισμένοι ακέραιοι και θετικοί αριθμοί μπορούν να γραφούν στη μορφή m k, όπου m, k ακέραιοι και θετικοί αριθμοί μεγαλύτεροι ή και ίσοι του 2. Π.χ. 9=3 2 (m = 3, k = 2) 64 = 2 6 = 4 4 = 8 2 (m = 2, k = 6), (m = 4, k = 4), (m = 8, k = 2) (για ορισμένους αριθμούς υπάρχουν περισσότερα από ένα ζεύγη τιμών (m, k) ) Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει όλους τους αριθμούς που μπορούν να γραφούν με τη συγκεκριμένη μορφή, τουλάχιστον με ένα ζεύγος (m, k) και είναι μικρότεροι του 1000. Για όσους μπορούν να γραφούν με περισσότερα του ενός, διαφορετικά ζεύγη (m, k) να βρίσκονται, να μετρώνται και να εμφανίζονται όλα, μαζί με το πλήθος τους (π.χ. για τον αριθμό 64 θα εμφανίζονται τα ζεύγη : (2,6) (4,4) (8,2) πλήθος = 3). ΑΣΚΗΣΗ - 10 Θεωρείστε μια σειρά ακεραίων θετικών αριθμών στην περιοχή [1-999], πλήθους Ν (Ν = γνωστό). Η εισαγωγή των αριθμών μπορεί να γίνει με οποιονδήποτε τρόπο (εντολή scanf_s, χρήση συνάρτησης δημιουργίας τυχαίων αριθμών) αρκεί να υπάρχει έλεγχος εγκυρότητας τιμών. Για κάθε αριθμό της σειράς, έστω x, να δημιουργήσετε ένα νέο αριθμό, έστω y, που θα προκύπτει από την αντιστροφή των ψηφίων του και στη συνέχεια να βρείτε την απόλυτη τιμή της διαφοράς του αριθμού από τον νέο αριθμό, έστω z, (δηλ. z = x y ). Μια νέα σειρά, θα περιλαμβάνει εκείνους τους αριθμούς z, για τους οποίους ισχύει : a < z < b, όπου a, b δύο γνωστά όρια, και a < b. Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα δημιουργεί και θα εμφανίζει τη σειρά των αριθμών z. Στο τέλος θα πρέπει να εμφανίζεται και το πλήθος αυτών των αριθμών. Παράδειγμα : Αριθμός =719, αντίστροφος =917, διαφορά z = 719 917 = 202 Αν a = 100, b = 200 τότε ο αριθμός 202 δεν θα ανήκει στη νέα σειρά. 3

ΑΣΚΗΣΗ - 11 Θεωρείστε μια σειρά ακεραίων θετικών αριθμών στην περιοχή [1-999], πλήθους Ν (Ν = γνωστό). Η εισαγωγή των αριθμών μπορεί να γίνει με οποιονδήποτε τρόπο (εντολή scanf_s, χρήση συνάρτησης δημιουργίας τυχαίων αριθμών) αρκεί να υπάρχει έλεγχος εγκυρότητας τιμών. Χρησιμοποιώντας όλους τους αριθμούς της πρώτης σειράς να δημιουργηθεί μία δεύτερη σειρά αριθμών, από την πρώτη, που θα περιλαμβάνει όλους τους αριθμούς της πρώτης σειράς, που ικανοποιούν την παρακάτω ιδιότητα: Το άθροισμα του πηλίκου και του υπόλοιπου της διαίρεσης του αριθμού από την πρώτη σειρά, με το άθροισμα των ψηφίων του αριθμού να είναι ίσο. Παράδειγμα : Ο αριθμός 55. Άθροισμα των ψηφίων του =10. 55/10 = 5 και υπόλοιπο 5. Άρα ο αριθμός 55 θα ανήκει στη νέα σειρά αριθμών. Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα δημιουργεί και θα εμφανίζει τη δεύτερη σειρά αριθμών. Στο τέλος θα πρέπει να εμφανίζεται και το πλήθος των αριθμών της δεύτερης σειράς. ΑΣΚΗΣΗ - 12 Να γίνει εισαγωγή τιμών σε μονοδιάστατο πίνακα ακεραίων θετικών αριθμών στην περιοχή [1-999], Ν στοιχείων (Ν = γνωστό). Η εισαγωγή των αριθμών μπορεί να γίνει με οποιονδήποτε τρόπο (εντολή scanf_s, χρήση συνάρτησης δημιουργίας τυχαίων αριθμών), αρκεί να υπάρχει έλεγχος εγκυρότητας τιμών. Να δημιουργηθεί νέος πίνακας που θα περιλαμβάνει τις διαφορές των στοιχείων του αρχικού πίνακα, ανά ζεύγη, κατ απόλυτη τιμή, ως εξής (διαφορά του 1 ου με το Ν-οστό στοιχείο, του 2 ου στοιχείου με το Ν-1-οστό στοιχείο κ.ο.κ.), ταξινομημένες σε αύξουσα διάταξη, χωρίς να χρησιμοποιηθεί διαδικασία ταξινόμησης. Αν ο αριθμός Ν είναι άρτιος τότε θα υπολογιστούν οι διαφορές για τα αντίστοιχα ζεύγη. Παράδειγμα: Αρχικός πίνακας, Ν=10 14 7 91 27 53 72 8 5 33 44 Διαφορές : 14-44 =30, 7-33 =26, 91-5 =87, 27-8 =19, 53-72 =19, Νέος πίνακας σε αύξουσα διάταξη: 19 19 26 30 87 ΑΣΚΗΣΗ - 13 Να γραφεί πρόγραμμα σε γλώσσα C για το παρακάτω πρόβλημα: Να δημιουργηθεί, χρησιμοποιώντας αποκλειστικά τυχαίους αριθμούς, μονοδιάστατος αριθμητικός πίνακας ακεραίων θετικών αριθμών Ν θέσεων, όπου Ν είναι θετικός και άρτιος αριθμός (Ν = γνωστό) στον οποίο θα, π.χ. για Ν=14 υπάρχουν ζεύγη τιμών, έστω 45 3 18 2 9 4 91 1 77 8 50 3 7 2 Για τις τιμές, πρέπει να ισχύει ότι: 0 100 και 0 10. Να δημιουργηθεί και να εμφανιστεί ένας νέος πίνακας που θα περιέχει τα γινόμενα όλων των στοιχείων των ζευγών, δηλ., σε αύξουσα διάταξη, χωρίς να χρησιμοποιηθεί διαδικασία ταξινόμησης. Π.χ. για το παράδειγμα ο νέος πίνακας θα είναι: 14 36 36 91 135 150 616 4

ΑΣΚΗΣΗ 14 Να γραφεί πρόγραμμα σε γλώσσα C για το παρακάτω πρόβλημα: Να δημιουργηθούν, χρησιμοποιώντας αποκλειστικά τυχαίους αριθμούς (συνάρτηση rand()), δύο μονοδιάστατοι αριθμητικοί πίνακες ακεραίων αριθμών Ν θέσεων (π.χ. Ν = 20), έστω Α και Β ως εξής: Ο πίνακας Α περιέχει θετικούς ακεραίους αριθμούς στο διάστημα [0,99]. Κάθε αριθμός πρέπει να υπάρχει μία μόνον φορά. Ο πίνακας Β περιέχει τη συχνότητα εμφάνισης του αντίστοιχου στοιχείου του πίνακα Α (περιοχή τιμών για τα στοιχεία του πίνακα Β : [1,10]). Στη συνέχεια : 1. να γίνει εμφάνιση των πινάκων Α και Β. 2. να υπολογιστεί και να εμφανιστεί η ποσότητα: N i i1 N i1 i i ΑΣΚΗΣΗ - 15 Οι αριθμοί Rhonda (ακέραιοι και θετικοί αριθμοί) διαθέτουν την ακόλουθη ιδιότητα: Το γινόμενο των ψηφίων ενός αριθμού Rhonda είναι ίσο με το γινόμενο του αριθμού 10 επί το άθροισμα των διαιρετών του που είναι πρώτοι αριθμοί. Παράδειγμα : ο αριθμός 1568 είναι αριθμός Rhonda διότι 1568 = 2 2 2 2 2 7 7 1 5 6 8 = 240 240 = 10 (2 + 2 + 2 + 2 + 2 + 7 + 7) Να γραφεί αλγόριθμος ή πρόγραμμα σε γλώσσα C που θα βρίσκει όλους τους τετραψήφιους αριθμούς Rhonda ( περιοχή [1000, 9999] ) και θα τους καταχωρεί σε έναν μονοδιάστατο αριθμητικό πίνακα. Στη συνέχεια θα εμφανίζει τα περιεχόμενα του πίνακα καθώς και το πλήθος των στοιχείων του. (ΥΠΟΔΕΙΞΗ : το πλήθος των τετραψήφιων αριθμών Rhonda είναι μικρότερο του 20). (ΥΠΟΔΕΙΞΗ 1 η : Το παρακάτω τμήμα κώδικα σε γλώσσα C βρίσκει αν ένας ακέραιος και θετικός αριθμός k 2 είναι πρώτος (prime) αριθμός ). i=2; flag=0; while ((i<=k/2) && (flag==0)) { if (k%i==0) flag=1; i++; } if (flag==0) printf("number %4d is prime \n",k); (ΥΠΟΔΕΙΞΗ 2 η : Οι αριθμοί Rhonda στο διάστημα [1000, 9999] είναι οι εξής : 1568, 2835, 4752, 5265, 5439, 5664, 5824, 5832, 8526). 5

ΑΣΚΗΣΗ - 16 Οι αριθμοί Mersenne (ακέραιοι και θετικοί), έστω M n έχουν τη μορφή M n = 2 n 1 Ένας αριθμός Mersenne λέγεται Mersenne prime αν είναι πρώτος αριθμός και ο αριθμός n είναι πρώτος αριθμός. Π.χ. ο αριθμός 3 είναι Mersenne prime. Να γραφεί πρόγραμμα σε γλώσσα C που θα καταχωρεί σε μονοδιάστατο αριθμητικό πίνακα όλους τους Mersenne prime αριθμούς που είναι μικρότεροι του 10000. Στο τέλος να εμφανιστούν τα στοιχεία του πίνακα καθώς και το πλήθος τους. (ΣΧΟΛΙΟ : οι Mersenne prime που είναι μικρότεροι του 10000 είναι : 3, 7, 31, 127, 8191 ). ΑΣΚΗΣΗ - 17 Ένας αριθμός Proth είναι ένας ακέραιος και θετικός αριθμός N που μπορεί να εκφραστεί στη μορφή: όπου k είναι ένας περιττός ακέραιος αριθμός n ένας θετικός ακέραιος αριθμός και 2 n > k N = k 2 n + 1 Να γραφεί πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει σε αύξουσα σειρά όλους τους αριθμούς Proth που είναι μικρότεροι του 1000. Στο τέλος θα πρέπει να εμφανίζεται και το πλήθος τους. ΔΕΝ ΠΡΕΠΕΙ ΝΑ ΧΡΗΣΙΜΟΠΟΙΗΘΕΙ ΔΙΑΔΙΚΑΣΙΑ ΤΑΞΙΝΟΜΗΣΗΣ!!! ΠΑΡΑΔΕΙΓΜΑ : οι δέκα πρώτοι κατά σειρά αριθμοί Proth είναι : 3, 5, 9, 13, 17, 25, 33, 41, 49, 57 ΣΧΟΛΙΑ : Οι τιμές προκύπτουν για διάφορους συνδυασμούς των k, n. Π.χ. Για k = 1 και n = 1, 2, 3, 4, 5 ισχύει η ανισότητα 2 n > k και προκύπτουν οι τιμές N = 3, 5, 9, 17, 33 Ομοίως για k = 3 και n = 2, 3, 4 ισχύει η ανισότητα 2 n > k και προκύπτουν οι τιμές N = 13, 25, 49 Η τιμή Ν = 41 προκύπτει για k = 5, n = 3 ΑΣΚΗΣΗ - 18 Ένας ακέραιος και θετικός αριθμός ονομάζεται αριθμός Smith εφόσον δεν είναι πρώτος (prime) και το άθροισμα των ψηφίων του είναι ίσο με το άθροισμα των ψηφίων των διαιρετών του που είναι πρώτοι αριθμοί (εξαιρώντας από τους διαιρέτες το 1). Παραδείγματα : 274 = 2 137 2 + 7 + 4 = 2 + (1 + 3 + 7) = 13 4937775 = 3 5 5 65837 4 + 9 + 3 + 7 + 7 + 7 + 5 = 3 + 5 + 5 + (6 + 5 + 8 + 3 + 7) = 42 Να γραφεί πρόγραμμα σε γλώσσα C που θα καταχωρεί σε μονοδιάστατο αριθμητικό πίνακα όλους τους αριθμούς Smith που είναι μικρότεροι του 1000. Στο τέλος να εμφανιστούν τα στοιχεία του πίνακα καθώς και το πλήθος τους. (ΣΧΟΛΙΟ : μερικοί αριθμοί Smith, ξεκινώντας από την αρχή : 4, 22, 27, 58, 85, 94, 121, 166, 202, 265, 274, 319, 346,...). 6

ΑΣΚΗΣΗ 19 Η καταλανική τριάδα (Catalan s triangle) είναι το τρίγωνο αριθμών Κάθε στοιχείο είναι το άθροισμα του στοιχείου που βρίσκεται ακριβώς πάνω από αυτό και αυτού που βρίσκεται αριστερά του. Π.χ. 9=5+4. Να γραφεί πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει το σχετικό τρίγωνο καταλανικών τριάδων για n = 20. ΑΣΚΗΣΗ 20 Ένας ακέραιος και θετικός αριθμός k λέγεται k smooth εάν δεν έχει ως διαιρέτες πρώτους αριθμούς που είναι μεγαλύτεροι του k. Ο πίνακας που ακολουθεί δείχνει ορισμένους k smooth αριθμούς για μικρές τιμές του k. k k smooth 2 1, 2, 4, 8, 16, 32, 64, 128, 256, 512,... 3 1, 2, 3, 4, 6, 8, 9, 12, 16, 18, 24,... 5 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16,... 7 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15,... 11 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14,... Να γραφεί πρόγραμμα σε γλώσσα C που θα βρίσκει και θα εμφανίζει όλους τους k smooth αριθμούς που είναι μικρότεροι του 200 για όλους τους πρώτους αριθμούς k που είναι μικρότεροι του 100. ΑΣΚΗΣΗ 21 Η παραγωγή ενός προϊόντος για Ν περιόδους παραγωγής (Ν = γνωστό) καταχωρείται σε ένα μονοδιάστατο πίνακα πραγματικών θετικών αριθμών Α. Σε κάθε μία από τις Ν περιόδους αντιστοιχούν 2 βάρδιες παραγωγής, η ημερήσια βάρδια και η νυχτερινή βάρδια. Να γραφεί πρόγραμμα σε γλώσσα C που θα υλοποιεί τα εξής: 1. θα εισάγει στον πίνακα Α τα δεδομένα παραγωγής, σε μορφή ζευγών ανά περίοδο παραγωγής. Το 1 ο στοιχείο κάθε ζεύγους αντιστοιχεί στην ημερήσια παραγωγή και το 2 ο στοιχείο στη νυχτερινή παραγωγή. Πρέπει να εξασφαλίσετε ότι όλα τα δεδομένα θα είναι θετικοί πραγματικοί αριθμοί στην περιοχή [30.0, 200.0]. 2. θα δημιουργεί στη συνέχεια δύο νέους πίνακες με ονόματα H και Β που θα περιέχουν : a. ο πίνακας Η τις ποσότητες ημερήσιας παραγωγής που είναι μεγαλύτερες κατά 15% από τον μέσο όρο της συνολικής ημερήσιας παραγωγής των Ν περιόδων. b. Αν LIMIT ( = ΓΝΩΣΤΟ ) είναι η επιθυμητή συνολική παραγωγή των Ν περιόδων κατά τη νυχτερινή βάρδια, ο πίνακας Β θα περιέχει μόνον εκείνες τις ποσότητες νυχτερινής παραγωγής που αποτελούν το πλεόνασμα της επιθυμητής συνολικής παραγωγής κατά τη νυχτερινή βάρδια. 3. Θα εμφανίζει τα στοιχεία των πινάκων Η και Β. 7

ΠΑΡΑΔΕΙΓΜΑ για Ν=6, LIMIT =250.0 Περίοδος 1 2 3 4 5 6 Βάρδια Η B Η B Η B Η B Η B Η B Παραγωγή 150. 80. 190. 70. 195. 170. 30. 55. 100. 95. 145. 125. Για το ερώτημα 2b : 80.0 + 70.0 + 170.0 =320.0 >250.0 οπότε ο πίνακας Β θα είναι 70.0 ( = 320.0-250.0 ) 55.0 95.0 125.0 ΑΣΚΗΣΗ 22 Το παρακάτω τμήμα κώδικα σε γλώσσα C βρίσκει αν ένας ακέραιος και θετικός αριθμός k 2 είναι πρώτος (prime) αριθμός. i=2; flag=0; while ((i<=k/2) && (flag==0)) { if (k%i==0) flag=1; i++; } if (flag == 0) printf("number %4d is prime \n",k); Θεωρείστε σε σειρές (ανά 10 σε κάθε σειρά) πρώτους (primes) ακέραιους αριθμούς. Η σειρά με αριθμό i = 1 ξεκινά από τον πρώτο αριθμό 2. Η επόμενη σειρά περιλαμβάνει τους επόμενους 10 πρώτους (primes) ακέραιους αριθμούς καταχωρημένους σε φθίνουσα διάταξη. Οι σειρές δημιουργούνται επαναληπτικά (σε αύξουσα και φθίνουσα διάταξη των πρώτων αριθμών αντίστοιχα) μέχρις ότου το άθροισμα των στοιχείων που βρίσκονται στη διαγώνιο που φαίνεται με έντονο περίγραμμα (παρακάτω) υπερβεί μια δεδομένη τιμή n (n = γνωστό, δίνεται ως σταθερά στην αρχή του προγράμματος). Π.χ. για n = 500 δημιουργούνται οι παρακάτω σειρές: i 1 2 3 5 7 11 13 17 19 23 29 i 2 71 67 61 59 53 47 43 41 37 31 i 3 73 79 83 89 97 101 103 107 109 113 i 4 173 167 163 157 151 149 139 137 131 127 i 5 179 181 191 193 197 199 211 223 227 229 Το άθροισμα 29+37+107+139+199=511 είναι μεγαλύτερο του n = 500 και η επανάληψη σταματά. Να γραφεί πρόγραμμα σε γλώσσα C που : 1. θα βρίσκει και θα εμφανίζει τις σειρές αυτές (τα στοιχεία σε πλαίσιο προφανώς δεν θα εμφανίζονται σε πλαίσιο!). 2. θα καταχωρεί σε ένα μονοδιάστατο πίνακα ακεραίων θετικών αριθμών, έστω X, όλα τα στοιχεία που ανήκουν στην προαναφερόμενη διαγώνιο. Δηλ. ο πίνακας Χ, στο τέλος, θα είναι = {29,37,107,139,199} 3. Θα εμφανίζει τα στοιχεία του πίνακα Χ καθώς και το άθροισμα των στοιχείων που. 8

ΑΣΚΗΣΗ 23 Σε ένα Πανεπιστημιακό Τμήμα πρόκειται να καταρτιστεί μία λίστα για τα μαθήματα της εξεταστικής περιόδου. Για κάθε μάθημα είναι γνωστά: 1. Ο κωδικός του μαθήματος (ακέραιος στην περιοχή [1-99] ) 2. Το εξάμηνο στο οποίο ανήκει (ακέραιος στην περιοχή [1-9]) 3. Το πλήθος των φοιτητών & φοιτητριών που πρόκειται να δώσουν εξετάσεις (ακέραιος 1-999) Να γραφεί πρόγραμμα σε γλώσσα C που θα υλοποιεί τα εξής : 1. Θα εισάγει δεδομένα σε έναν πίνακα ακεραίων με 3*Ν σε πλήθος θέσεις, σύμφωνα με τα παραπάνω. Ο γνωστός αριθμός Ν >0 δηλώνει το πλήθος των μαθημάτων για τα οποία θα πραγματοποιηθούν εξετάσεις (δηλ. ενδεχομένως για κάποια μαθήματα δεν θα διενεργηθούν εξετάσεις). Η εισαγωγή θα γίνει αποκλειστικά και μόνο με χρήση τυχαίων αριθμών - συνάρτηση rand( ) - στα όρια που έχουν δοθεί για κάθε τριάδα στοιχείων. ΠΡΟΣΟΧΗ!! Ο κάθε κωδικός μαθήματος θα πρέπει να υπάρχει μόνον μία φορά στον πίνακα!! 2. Θα εμφανίζει μία λίστα των μαθημάτων που πρόκειται να εξεταστούν, ανά εξάμηνο. Η λίστα θα είναι ταξινομημένη κατά αύξουσα σειρά εξαμήνου και κατά αύξουσα σειρά του κωδικού μαθήματος μέσα στο κάθε εξάμηνο, ΧΩΡΙΣ ΝΑ ΧΡΗΣΙΜΟΠΟΙΗΣΕΤΕ ΔΙΑΔΙΚΑΣΙΕΣ ΤΑΞΙΝΟΜΗΣΗΣ! Στο τέλος κάθε εξαμήνου θα πρέπει να εμφανίζεται ο μέσος όρος των ατόμων που πρόκειται να δώσουν εξετάσεις. Αριθμητικό ΠΑΡΑΔΕΙΓΜΑ, Ν=8. 15 2 45 49 7 190 74 8 77 91 1 120 30 1 170 72 8 71 55 7 115 77 8 70 Αποτελέσματα : ΕΞΑΜΗΝΟ : 1 μαθήματα : 30, 91 μέσος όρος: 145 (=(170+120)/2 ) ΕΞΑΜΗΝΟ : 2 μαθήματα : 15 μέσος όρος: 45 ΕΞΑΜΗΝΟ : 7 μαθήματα :49, 55 μέσος όρος: 153 (=(190+115/2 ) ΕΞΑΜΗΝΟ : 8 μαθήματα :72, 74, 77 μέσος όρος: 73 (=(71+77+70)/3) ΑΣΚΗΣΗ 24 Μία παραγωγική μονάδα κατασκευάζει εξαρτήματα που στη συνέχεια χρησιμοποιούνται για τη συναρμολόγηση προϊόντων. Ο κωδικός κάθε εξαρτήματος είναι μοναδικός και χρησιμοποιείται μόνον σε ένα από τα προϊόντα. Για κάθε εξάρτημα είναι γνωστά: 1. Κωδικός εξαρτήματος (ακέραιος αριθμός στην περιοχή [1-999]), 1. Κωδικός προϊόντος ( ακέραιος αριθμός στην περιοχή [1-10] ), 2. Πλήθος τεμαχίων του εξαρτήματος που χρησιμοποιούνται για την παραγωγή μίας μονάδας του προϊόντος ( ακέραιος αριθμός >0 ) Να γραφεί πρόγραμμα σε γλώσσα C που θα υλοποιεί τα εξής: 1. Θα εισάγει δεδομένα σε έναν πίνακα ακεραίων με 3*Ν σε πλήθος θέσεις, σύμφωνα με τα παραπάνω. Ο γνωστός αριθμός Ν>0 δηλώνει το πλήθος των εξαρτημάτων που κατασκευάζονται στην παραγωγική μονάδα. Η εισαγωγή θα γίνει αποκλειστικά και μόνο με χρήση τυχαίων αριθμών - συνάρτηση rand( ) - στα όρια που έχουν δοθεί, για κάθε τριάδα στοιχείων. ΠΡΟΣΟΧΗ!! Ο κάθε κωδικός εξαρτήματος θα πρέπει να υπάρχει μόνον μία φορά στον πίνακα!! 2. Θα εμφανίζει μία λίστα των εξαρτημάτων που κατασκευάζονται, ανά προϊόν. Η λίστα θα είναι ταξινομημένη κατά αύξουσα σειρά του κωδικού προϊόντος και κατά αύξουσα σειρά του κωδικού εξαρτήματος μέσα στο κάθε προϊόν, ΧΩΡΙΣ ΝΑ ΧΡΗΣΙΜΟΠΟΙΗΣΕΤΕ ΔΙΑΔΙΚΑΣΙΕΣ ΤΑΞΙΝΟΜΗΣΗΣ! Στο τέλος κάθε προϊόντος θα πρέπει να εμφανίζεται και το συνολικό πλήθος των τεμαχίων όλων των εξαρτημάτων του προϊόντος. 9

Αριθμητικό ΠΑΡΑΔΕΙΓΜΑ, Ν=8. 15 9 4 197 3 10 514 9 7 911 4 120 305 4 17 72 3 11 770 4 5 222 3 8 Αποτελέσματα : ΠΡΟΪΌΝ : 3 ΕΞΑΡΤΗΜΑΤΑ : 72, 197, 222 σύνολο τεμαχίων: 29 ΠΡΟΪΌΝ : 4 ΕΞΑΡΤΗΜΑΤΑ :305, 770, 911 σύνολο τεμαχίων: 142 ΠΡΟΪΌΝ : 9 ΕΞΑΡΤΗΜΑΤΑ :15, 514 σύνολο τεμαχίων: 11 ΑΣΚΗΣΗ 25 Να γραφεί κώδικας σε γλώσσα C για τον παρακάτω αλγόριθμο: 1. Δημιουργία ενός θετικού τυχαίου αριθμού m : 2 m 1500 2. Εύρεση όλων των διαιρετών του m που είναι πρώτοι αριθμοί (prime numbers), βάσει του κώδικα που παρατίθεται στη συνέχεια 3. Προσδιορισμός του αριθμού n που θα είναι το γινόμενο των γνήσιων διαιρετών του αριθμού m με περιττό πλήθος εμφανίσεων. Κάθε τέτοιος γνήσιος διαιρέτης θα συμμετέχει μόνον μία φορά στον προσδιορισμό του αριθμού n. 4. Προσδιορισμός του αριθμού z m n 5. Εύρεση του αριθμού k για τον οποίο ισχύει ότι 2 k m n 6. Εμφάνιση των αριθμών m, n, k σύμφωνα με την προδιαγραφή του παραδείγματος. Παράδειγμα, έστω m 90 Διαιρέτες (γνήσιοι) του 90 : 2, 3, 3, 5 Διαιρέτες με περιττό πλήθος εμφανίσεων: 2, 5 2 n 25 10, z 9010 900, k 30 (30 900) m 90, n 10, k 30 (ΥΠΟΔΕΙΞΗ : Το παρακάτω τμήμα κώδικα σε γλώσσα C βρίσκει αν ένας ακέραιος και θετικός αριθμός k 2 είναι πρώτος (prime) αριθμός ). i=2; flag=0; while ((i<=k/2) && (flag==0)) { if (k%i==0) flag=1; i++; } if (flag==0) printf("number %4d is prime \n",k); 10

ΑΣΚΗΣΗ 26 Θεωρείστε Ν πόλεις (Ν= γνωστό), για τις οποίες είναι γνωστές οι συντεταγμένες τους, x y ένα γνωστό ζεύγος αριθμητικών θετικών τιμών τύπου double για κάθε πόλη. Οι συντεταγμένες δημιουργούνται τυχαία στην περιοχή τιμών [0.0, 999.0] και καταχωρούνται σε έναν μονοδιάστατο αριθμητικό πίνακα που περιλαμβάνει τις συντεταγμένες για όλες τις πόλεις. Να γραφεί πρόγραμμα σε γλώσσα C που θα βρίσκει την πόλη (ή τις πόλεις) που απέχουν τη μικρότερη συνολική απόσταση από όλες τις υπόλοιπες πόλεις, με ακρίβεια 10-2. Το πρόγραμμα θα εμφανίζει τον α/α της πόλης (ή των πόλεων) καθώς και την μικρότερη συνολική απόσταση. ΠΑΡΑΔΕΙΓΜΑ για Ν=5 (2.5, 5.0), (5.1, 3.0), (1.0, 9.0), (5.4, 54.0), (5.5, 2.1) Η πόλη με την μικρότερη συνολική απόσταση, 60.81, είναι η πόλη με συντεταγμένες (2.5, 5.0) Η απόσταση δύο σημείων 1 1 x x y y 2 2 2 1 2 1 ( x, y ) και ( x2, y 2) στον δισδιάστατο καρτεσιανό χώρο είναι : i i ΑΣΚΗΣΗ 27 Θεωρείστε έναν μονοδιάστατο πίνακα ακεραίων θετικών αριθμών Ν θέσεων (Ν= γνωστό). 1. Να εισάγετε τιμές στον πίνακα με χρήση τυχαίων αριθμών στην περιοχή [1,99]. 2. Ορίζουμε ως pivot το στοιχείο που υπάρχει στην αρχική (1 η θέση) του πίνακα. Να διαμερίσετε τον πίνακα, δημιουργώντας έναν νέο πίνακα, σε δύο τμήματα ως εξής: ο νέος πίνακας περιλαμβάνει στο πρώτο του τμήμα, σε αύξουσα διάταξη, χωρίς να χρησιμοποιηθεί διαδικασία ταξινόμησης, όλες τις τιμές του αρχικού πίνακα που είναι μικρότερες ή και ίσες από την τιμή που υπάρχει στη θέση pivot. Στη συνέχεια, υπάρχει η τιμή της θέσης pivot και ακολουθούν, στο δεύτερο τμήμα του, οι τιμές του αρχικού πίνακα που είναι μεγαλύτερες της τιμής που υπάρχει στη θέση pivot, όπως εμφανίζονται στον αρχικό πίνακα, από αριστερά προς τα δεξιά. 3. Να εμφανίσετε τους δύο πίνακες ΠΑΡΑΔΕΙΓΜΑ για Ν=10 αρχικός πίνακας 7 2 7 14 16 3 8 1 27 5 νέος πίνακας 1 2 3 5 7 7 14 16 8 27 11