ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ

Σχετικά έγγραφα
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ

ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ-ΓΛΩΣΣΑ C ΑΤΕΙ (ΝΑ ΕΚΤΕΛΕΣΤΟΥΝ ΤΑ ΠΑΡΑΚΑΤΩ ΜΕ ΧΡΗΣΗ ΤΟΥ LCC COMPILER)

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ

Υπολογισμός - Εντολές Επανάληψης

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 29/11/07

Ενότητα 4: «Εισαγωγή στον Προγραμματισμό. Τα πρώτα προγράμματα σε γλώσσα C»

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Υπολογισμός - Εντολές Ελέγχου

Πανεπιστήμιο Πελοποννήσου. Σχολή Θετικών Επιστημών & Τεχνολογίας. Τμήμα Επιστήμης & Τεχνολογίας Υπολογιστών. Προγραμματισμός Ι Εργαστήριο

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 8 η : Συναρτήσεις Χειµερινό Εξάµηνο 2011

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007

Ασκήσεις & παραδείγματα για επανάληψη

Μεθόδων Επίλυσης Προβλημάτων

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

ΕΡΓΑΣΤΗΡΙΟ 1 - ΣΗΜΕΙΩΣΕΙΣ

Αντικειμενοστρεφής Προγραμματισμός

Δομημένος Προγραμματισμός (ΤΛ1006)

Εισαγωγή στον Προγραμματισμό

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής

Προγραμματισμός I (Θ)

Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C»

Προγραμματισμός I (Θ)

11/23/2014. Στόχοι. Λογισμικό Υπολογιστή

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

Ασκηή σεις 12ο Μαά θημα - Λυύ σεις

Μεθόδων Επίλυσης Προβλημάτων

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ

Η γλώσσα προγραμματισμού C

Συναρτήσεις. Εισαγωγή

Στόχοι και αντικείμενο ενότητας. Πέρασμα Πίνακα σε Συνάρτηση (συν.) Πέρασμα Πίνακα σε Συνάρτηση. #8.. Ειδικά Θέματα Αλγορίθμων

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

Μεθόδων Επίλυσης Προβλημάτων

Διάλεξη 4: Προγραμματισμός σε JAVA IΙ. Διδάσκων: Παναγιώτης Ανδρέου

ΕΡΓΑΣΤΗΡΙΟ 5 ΣΗΜΕΙΩΣΕΙΣ

Δομημένος Προγραμματισμός (ΤΛ1006)

Η γλώσσα προγραμματισμού C

Προγραμματισμός I (Θ)

4 ο Εργαστήριο Προγραμματισμού Σελίδα 1/9 BALANCE. #include <stdio.h> int main() { int par = 0, ag = 0; char c;

Ασκήσεις σε Επαναληπτικούς Βρόχους και Συναρτήσεις. Επανάληψη για την ενδιάμεση εξέταση. (Διάλεξη 13)

bits and bytes q Ο υπολογιστής χρησιμοποιεί τη κύρια μνήμη για αποθήκευση δεδομένων

Η γλώσσα προγραμματισμού C

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Σημειώσεις δεύτερης εβδομάδας

Απλά Προγράμματα. Βήματα: 1. Καθορισμός παράστασης δεδομένων στη μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων

Εξοικ Εξ ε οικ ίωση ε με το το πρόγ ραμμα πρόγ DEV C++ Επικοι Επικ νωνία οι Χρήσ Χρήστη τη Υπολ Υπο ογισ λ τή

Κεφάλαιο 8.7. Πίνακες & Συναρτήσεις ( ιάλεξη 17) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

int abs( int x ), επιστρέφει την απόλυτη τιμή του ακεραίου x Πχ abs( 11) ισούται με 11, abs(34) ισούται με 34 double fb( fabs( double x ), επιστρέφει

ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΛΟΓΙΣΜΙΚΟΥ. p: i: 3 p: i: 5

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Βήματα: μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων. Δομές Δεδομένων + Αλγόριθμοι = Προγράμματα

ΠΡΟΓΡΜΜΑΤΑ ΣΕ C. Γράψτε σε γλώσσα προγραμματισμού C τη συνάρτηση:

Κεφάλαιο Πίνακες Ι. (Διάλεξη 16)

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

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

Εισαγωγή στον Προγραµµατισµό. Πανεπιστήµιο Θεσσαλίας Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

Προγραμματισμός Η/Υ. Ενότητα 8: Ειδικά Θέματα Αλγορίθμων

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7)

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

Εισαγωγή στον Προγραμματισμό

6. ΠΙΝΑΚΕΣ & ΑΛΦΑΡΙΘΜΗΤΙΚΑ

Η γλώσσα προγραμματισμού C

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

γνωστό) ΘΕΩΡΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ι ΑΣΚΗΣΕΙΣ ΘΕΩΡΙΑΣ Ασκήσεις C 1. Να γραφεί πρόγραµµα που να εµφανίζει τους 5 πρώτους µεγαλύτερους

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ:

ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Δείκτες και Συναρτήσεις (Κεφάλαιο 11, KNK-2ED)

Προγραμματισμός I (Θ)

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while)

Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char

C Programming EPL032 Maria Stavrinou Ioannou Εισαγωγή στη Γλώσσα C

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Κεφάλαιο : Επαναλήψεις (oι βρόγχοιfor, do-while) (Διάλεξη 10) Εντολές Επανάληψης που θα καλυφθούν σήμερα

Ένα απλό πρόγραμμα C

Τύποι Δεδομένων Είσοδος/Έξοδος

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός (ΤΛ1006)

Η γλώσσα προγραμματισμού C Οι συναρτήσεις στη C (2)

Εισαγωγή στον Προγραμματισμό

Η γλώσσα προγραμματισμού C

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

Μεθόδων Επίλυσης Προβλημάτων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

Νικόλαος Μιχαλοδημητράκης Σημειώσεις C (Εργαστήριο) 5 ο Μέρος 5 ο Μέρος Εντολές Επανάληψης: FOR - WHILE. Περιγραφή

Προγραμματισμός Ι. Θεματική ενότητα 8: Δημιουργία προγραμμάτων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II

Transcript:

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ Κωδικός Θ: ΤΠ3001, Κωδικός Ε: ΤΠ3101 (ΜΕΥ/Υ) Ώρες (Θ - Ε): 4-2 Προαπαιτούμενα: Δρ. ΒΙΔΑΚΗΣ ΝΙΚΟΣ

ΕΡΓΑΣΤΗΡΙΟ 2 Arrays

Θεωρία Θεωρία Έννοιες Κανόνες Παραδείγματα Ασκήσεις Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 3

Έννοιες Θεωρία Έννοιες Κανόνες Παραδείγματα Ασκήσεις Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 4

Κανόνες Θεωρία Έννοιες Κανόνες Παραδείγματα Ασκήσεις Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 5

Παραδείγματα σε Java public class MathLibraryExample public static void main(string[] args) int i = 7; int j = -9; double x = 72.3; double y = 0.34; public class MathLibraryExample public static void main(string[] args) int i = 7; int j = -9; double x = 72.3; double y = 0.34; System.out.println("i is " + i); System.out.println("j is " + j); System.out.println("x is " + x); System.out.println("y is " + y); // The absolute value of a number is equal to // the number if the number is positive or // zero and equal to the negative of the number // if the number is negative. System.out.println(" " + i + " is " + Math.abs(i)); System.out.println(" " + j + " is " + Math.abs(j)); System.out.println(" " + x + " is " + Math.abs(x)); System.out.println(" " + y + " is " + Math.abs(y)); // Truncating and Rounding functions // You can round off a floating point number // to the nearest integer with round() System.out.println(x + " is approximately " + Math.round(x)); System.out.println(y + " is approximately " + Math.round(y)); // The "ceiling" of a number is the // smallest integer greater than or equal to // the number. Every integer is its own // ceiling. System.out.println("The ceiling of " + i + " is " + Math.ceil(i)); System.out.println("The ceiling of " + j + " is " + Math.ceil(j)); System.out.println("The ceiling of " + x + " is " + Math.ceil(x)); System.out.println("The ceiling of " + y + " is " + Math.ceil(y)); Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 6

Παραδείγματα σε Java public class MathLibraryExample public static void main(string[] args) int i = 7; int j = -9; double x = 72.3; double y = 0.34; // The "floor" of a number is the largest // integer less than or equal to the number. // Every integer is its own floor. System.out.println("The floor of " + i + " is " + Math.floor(i)); System.out.println("The floor of " + j + " is " + Math.floor(j)); System.out.println("The floor of " + x + " is " + Math.floor(x)); System.out.println("The floor of " + y + " is " + Math.floor(y)); // Comparison operators // min() returns the smaller of the two arguments you pass it System.out.println("min(" + i + "," + j + ") is " + Math.min(i,j)); System.out.println("min(" + x + "," + y + ") is " + Math.min(x,y)); System.out.println("min(" + i + "," + x + ") is " + Math.min(i,x)); System.out.println("min(" + y + "," + j + ") is " + Math.min(y,j)); public class MathLibraryExample public static void main(string[] args) int i = 7; int j = -9; double x = 72.3; double y = 0.34; // There's a corresponding max() method // that returns the larger of two numbers System.out.println("max(" + i + "," + j + ") is " + Math.max(i,j)); System.out.println("max(" + x + "," + y + ") is " + Math.max(x,y)); System.out.println("max(" + i + "," + x + ") is " + Math.max(i,x)); System.out.println("max(" + y + "," + j + ") is " + Math.max(y,j)); // The Math library defines a couple // of useful constants: System.out.println("Pi is " + Math.PI); System.out.println("e is " + Math.E); // Trigonometric methods // All arguments are given in radians // Convert a 45 degree angle to radians double angle = 45.0 * 2.0 * Math.PI/360.0; System.out.println("cos(" + angle + ") is " + Math.cos(angle)); System.out.println("sin(" + angle + ") is " + Math.sin(angle)); // Inverse Trigonometric methods // All values are returned as radians double value = 0.707; System.out.println("acos(" + value + ") is " + Math.acos(value)); System.out.println("asin(" + value + ") is " + Math.asin(value)); System.out.println("atan(" + value + ") is " + Math.atan(value)); Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 7

Παραδείγματα σε Java public class MathLibraryExample public static void main(string[] args) int i = 7; int j = -9; double x = 72.3; double y = 0.34; // Exponential and Logarithmic Methods // exp(a) returns e (2.71828...) raised // to the power of a. System.out.println("exp(1.0) is " + Math.exp(1.0)); System.out.println("exp(10.0) is " + Math.exp(10.0)); System.out.println("exp(0.0) is " + Math.exp(0.0)); // log(a) returns the natural // logarithm (base e) of a. System.out.println("log(1.0) is " + Math.log(1.0)); System.out.println("log(10.0) is " + Math.log(10.0)); System.out.println("log(Math.E) is " + Math.log(Math.E)); // pow(x, y) returns the x raised // to the yth power. System.out.println("pow(2.0, 2.0) is " + Math.pow(2.0,2.0)); System.out.println("pow(10.0, 3.5) is " + Math.pow(10.0,3.5)); System.out.println("pow(8, -1) is " + Math.pow(8,-1)); // sqrt(x) returns the square root of x. for (i=0; i < 10; i++) System.out.println( "The square root of " + i + " is " + Math.sqrt(i)); // Finally there's one Random method // that returns a pseudo-random number // between 0.0 and 1.0; System.out.println("Here's one random number: " + Math.random()); System.out.println("Here's another random number: " + Math.random()); Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 8

Παραδείγματα σε C Παράδειγμα με μονοδιάστατο πίνακα #include <stdio.h> main() int n[ 10 ]; /* n is an array of 10 integers */ int i,j; /* initialize elements of array n to 0 */ for ( i = 0; i < 10; i++ ) n[ i ] = i + 100; /* set element at location i to i + 100 */ /* output each array element's value */ for (j = 0; j < 10; j++ ) printf("element[%d] = %d\n", j, n[j] ); Copyright: http://www.tutorialspoint.com/cprogramming/c_arrays.htm Παράδειγμα με πίνακα δύο διαστάσεων #include <stdio.h> main() int x; int y; int array[8][8]; /* Declares an array like a chessboard */ for ( x = 0; x < 8; x++ ) for ( y = 0; y < 8; y++ ) array[x][y] = x * y; /* Set each element to a value */ printf( "Array Indices:\n" ); for ( x = 0; x < 8;x++ ) for ( y = 0; y < 8; y++ ) printf( "[%d][%d]=%d ", x, y, array[x][y] ); printf( "\n" ); Copyright: http://www.cprogramming.com/tutorial/c/lesson8.html Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 9

Παραδείγματα σε C Παράδειγμα που τοποθετεί Ν ακέραιους σε ένα array και βρίσκει το άθροισμα των αρνητικών αριθμών, το άθροισμα των θετικών αριθμών και το μέσο όρο τους. #include <stdio.h> #define MAXSIZE 10 main() int array[maxsize]; int i, num, negative_sum = 0, positive_sum = 0; float total = 0.0, average; printf ("Enter the value of N \n"); scanf("%d", &num); printf("enter %d numbers (-ve, +ve and zero) \n", num); for (i = 0; i < num; i++) scanf("%d", &array[i]); printf("input array elements \n"); for (i = 0; i < num; i++) printf("%+3d\n", array[i]); /* Summation starts */ for (i = 0; i < num; i++) if (array[i] < 0) negative_sum = negative_sum + array[i]; else if (array[i] > 0) positive_sum = positive_sum + array[i]; else if (array[i] == 0) ; total = total + array[i] ; average = total / num; printf("\n Sum of all negative numbers = %d\n", negative_sum); printf("sum of all positive numbers = %d\n", positive_sum); printf("\n Average of all input numbers = %.2f\n", average); Copyright: http://www.sanfoundry.com/c-program-sum-average-array/ Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 10

Παραδείγματα σε C Παράδειγμα #1 με χρήση του math.h Παράδειγμα #2 με χρήση του math.h #include <stdio.h> #include <stdlib.h> /* abs */ #include <math.h> /* fabs */ main() int i = 4; int j = -49; int r = 1; float x = 74.4; float y = 0.44; float z = -93.1; printf("i is %d\n",i); printf("j is %d\n",j); printf("j is %d\n",r); printf("x is %f\n",x); printf("y is %f\n",y); printf("y is %f\n",z); printf(" %d is %d\n",i,abs(i)); printf(" %d is %d\n",j,abs(j)); printf(" %d is %d\n",r,abs(r)); #include <stdio.h> #include <math.h> /* round, ceil */ main() int i = 4; int j = -49; int r = 1; float x = 74.4; float y = 0.4; float z = -93.1; printf("i is %d\n",i); printf("j is %d\n",j); printf("j is %d\n",r); printf("x is %f\n",x); printf("y is %f\n",y); printf("y is %f\n",z); //round printf("%f is approximately %f\n",x,round(x)); printf("%f is approximately %f\n",y,round(y)); printf("%f is approximately %f\n",z,round(z)); //ceil printf("the ceiling of %d is %d\n",i,(int)ceil(i)); printf("the ceiling of %d is %d\n",j,(int)ceil(j)); printf(" %f is %f\n",x,fabs(x)); printf("the ceiling of %d is %d\n",r,(int)ceil(r)); printf(" %f is %f\n",y,fabs(y)); printf("the ceiling of %f is %d\n",x,(int)ceil(x)); printf(" %f is %f\n",z,fabs(z)); printf("the ceiling of %f is %d\n",y,(int)ceil(y)); printf("the ceiling of %f is %d\n",z,(int)ceil(z)); getchar(); getchar(); Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 11

Ασκήσεις για Java Δημιουργείστε 2 πίνακες, 1 τύπου Integer μεγέθους 5 και 1 τύπου double μεγέθους 5 Βάλτε τις παρακάτω τιμές 7, -9, 5, -3, 27 και -72.23, 0.34, 13.76, -45.23, 56.98 αντίστοιχα Αλλάξτε τον κώδικα έτσι ώστε να λειτουργεί με τους πίνακες και όχι με τις μεταβλητές. Δημιουργήστε έναν τρίτο πίνακα 2 διαστάσεων που να κρατάει τις τιμές του ceiling και του floor. Γεμίστε τον με ένα for loop που να κάνει χρήση του μήκους (length) του πίνακα και εμφανίστε τα περιεχόμενα του στην οθόνη. Μετά κάντε sort τα στοιχεία του πίνακα 3 και εμφανίστε τα στην οθόνη. Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 12

Ασκήσεις για C Δημιουργείστε 2 πίνακες τύπου integer διαστάσεων 3x3. Στον πίνακα input να εισάγονται τιμές από το πληκτρολόγιο ενώ o πίνακας result θα χρησιμοποιηθεί για την αποθήκευση των αποτελεσμάτων. Στην πρώτη γραμμή του πίνακα result, εισάγετε τις απόλυτες τιμές των τιμών που βρίσκονται στην πρώτη γραμμή του πίνακα input χρησιμοποιώντας την συνάρτηση abs(). Αντίστοιχα, στην δεύτερη γραμμή να χρησιμοποιηθεί η συνάρτηση round() και στην τρίτη η συνάρτηση ceil() Εμφανίστε τα περιεχόμενα των δύο πινάκων στην οθόνη. Μάθημα: Δομές Δεδομένων & Αλγόριθμοι (Εργαστήριο) Καθηγητής: Δρ. Βιδάκης Νίκος Slide 13