Fondamenti di Programmazione
|
|
- Romina Frigerio
- 6 anni fa
- Visualizzazioni
Transcript
1 Fondamenti di Programmazione Ingegneria dell Automazione Industriale Ingegneria Elettronica e delle Comunicazioni Alessandro Saetti Marco Sechi e Andrea Bonisoli ( {alessandro.saetti,marco.sechi,andrea.bonisoli@unibs.it) Università degli Studi di Brescia 1
2 Esercizi sui cicli (1º parte) 1. Acquisisca da tastiera numeri interi fintantoché i numeri immessi sono positivi. Determini (stampando a video un messaggio) se i numeri immessi sono pari oppure dispari 2. Acquisisca da tastiera date fintantoché la data immessa è diversa da 0/0/0 Stampi a video la data che viene prima nel calendario 3. Acquisisca da tastiera 2 frazioni Stampi a video la somma delle frazioni ridotta ai minimi termini. (Suggerimento: Per ridurre una frazione ai minimi termini per prima cosa calcolare il MCD.) 2
3 Esercizio 1.1 Acquisisca da tastiera numeri interi fintantoché i numeri immessi sono positivi. Determini (stampando a video un messaggio) se i numeri immessi sono pari oppure dispari 3
4 Esercizi sui vettori 1 parte Esercizio 1.1 Acquisisca da tastiera numeri interi fintantoché i numeri immessi sono positivi. Determini (stampando a video un messaggio) se i numeri immessi sono pari oppure dispari Impostiamo la struttura iniziale del nostro programma C inserendo eventuali commenti Acquisisca da tastiera numeri interi fintantochéi numeri immessi sono positivi. Determini (stampando a video un messaggio) se i numeri immessi sono pari oppure dispari // Dichiarazione delle variabili... int n; #include <stdio.h> #include <stdlib.h> /* Nome: main * Scopo: Stampa numeri pari e dispari * Input: -- * Output: 0 se il programma termina correttamente */ int main() {... system("pause"); return(0); La funzione system esegue il comando passato come argomento. system()richiede <stdlib.h>. Implementiamo la prima parte della consegna printf(" DETERMINA I NUMERI PARI/DISPARI - \n"); // Titolo printf("inserisci numeri interi positivi (negativo o 0 per terminare):\n"); do { printf("==> "); scanf("%d", &n); // istruzioni per determinare se e pari o dispari... while(n > 0); Dichiariamo le variabili necessarie 4
5 Esercizi sui vettori 1 parte Esercizio 1.1 Verifichiamo la correttezza della parte appena scritta provando a compilarla ed eseguirla Proseguiamo con lo sviluppo, sicuri di ripartire da una situazione sintatticamente e semanticamente corretta. Acquisisca da tastiera numeri interi fintantochéi numeri immessi sono positivi. Determini (stampando a video un messaggio) se i numeri immessi sono pari oppure dispari... // se n <= 0 non valuto se pari o dispari if (n > 0) if (n % 2 == 0) printf("%d e' pari!\n", n); else printf("%d e' dispari!\n", n);... L espressione a % b fornisce il resto della divisione (quindi un intero!) tra a e b. Ad esempio 7 % 3 restituisce 1 Adesso compiliamo ed eseguiamo il nostro programma. Un esempio di output potrebbe essere il seguente: 5
6 Esercizi sui cicli 1 parte Esercizio 1.1 Soluzione completa: /************************************************************************** * Nome: lab1-pari_dispari.c * * Autore: Alessandro Saetti * * Data: 16/2/10 * **************************************************************************/ #include <stdio.h> #include <stdlib.h> /* Nome: main * Scopo: Stampa numeri pari e dispari * Input: -- * Output: 0 se il programma termina correttamente */ int main() { int n; printf(" DETERMINA I NUMERI PARI/DISPARI - \n"); printf("inserisci numeri interi positivi (negativoo 0 per terminare):\n"); do { printf("==> "); scanf("%d", &n); if (n > 0) if(n % 2 == 0) printf("%d e' pari!\n", n); else printf("%d e' dispari!\n", n); while(n > 0); INPUT VALUTO SE PARI OUTPUT system("pause"); return(0); 6
7 Esercizio 1.2 Acquisisca da tastiera date fintantoché la data immessa è diversa da 0/0/0 Stampi a video la data che viene prima nel calendario 7
8 Esercizi sui cicli 1 parte -Acquisisca da tastiera date fintantochéla data immessa è diversa da 0/0/0 -Stampi a video la data che viene prima nel calendario (quella più vecchia) Impostiamo la struttura di partenza del nostro programma C - Acquisisca da tastiera date fintantoché la data immessa è diversa da 0/0/0 -Stampi a video la data che viene prima nel calendario (quella piùvecchia) // Dichiarazione delle variabili... int aa,mm,gg; printf("immetti date (gg/mm/aa):\n"); do { printf("-->"); scanf("%d/%d/%d",&g,&m,&a); #include <stdio.h> #include <stdlib.h> /* Nome: main * Scopo: Calcola e stampa la data minima * Input: -- * Output: 0 se il programma termina correttamente */ int main() {... system("pause"); return(0); Dichiaro via via le variabili necessarie Spiego come immettere le date Leggo la data usando il carattere / come separatore Esercizio 1.2 // Determino se è la data minima while (gg!= 0 mm!= 0 aa!= 0); Lascio in sospeso la parte relativa alla determinazione della data minima Se non corrisponde alla data di stop 0/0/0 ripeto l operazione di lettura 8
9 Esercizi sui cicli 1 parte Esercizio Acquisisca da tastiera date fintantoché la data immessa è diversa da 0/0/0 -Stampi a video la data che viene prima nel calendario (quella piùvecchia) // Dichiarazione delle variabili... int aa,mm,gg; // Variabili per la data minima printf("immetti date (gg/mm/aa):\n"); do { printf("-->"); scanf("%d/%d/%d",&g,&m,&a); // Determino se è la minima Dichiaro ed inizializzo le variabili usate per memorizzare la data minima corrente L inizializzazione delle variabili relative alla data minima può essere fatta utilizzando i valori massimi che tali variabili possono assumere. // Dichiarazione variabili... int min_aa=100,min_mm=13, min_gg=32; while (gg!= 0 mm!= 0 aa!= 0); // OUTPUT Determinazione della data minima corrente if (aa > 0 && mm > 0 && gg > 0) { if (aa < min_aa) { min_aa = aa; min_mm = mm; min_gg = gg; else if (aa == min_aa && mm < min_mm) { min_mm = mm; min_gg = gg; else if (aa == min_aa && mm == min_mm && gg < min_gg) min_gg = gg; Mentre procediamo con la lettura valutiamo se la data appena letta gg/mm/aa (che deve essere diversa da 0/0/0!) risulta minore rispetto a quella minima attuale min_gg/min_mm/min_aa. Se così è aggiorno la data minima attuale con gg/mm/aa. printf("%d/%d/%d\n",min_gg,min_mm,min_aa); Stampo la data minima della sequenza letta 9
10 Esercizi sui cicli 1 parte Esercizio 1.2 Soluzione completa: /************************************************************************** * Nome: lab2-date.c * * Autore: Alessandro Saetti * * Data: 16/2/10 * **************************************************************************/ #include <stdio.h> #include <stdlib.h> /* Nome: main * Scopo: Calcola e stampa la data minima * Input: -- * Output: 0 se il programma termina correttamente */ int main() { int gg, mm, aa, min_aa = 100, min_mm = 13, min_gg= 32; printf("immetti date (gg/mm/aa):\n"); do { printf("-> "); scanf("%d/%d/%d", &gg, &mm, &aa); if (aa > 0 && mm > 0 && gg > 0) { if (aa < min_aa) { min_aa = aa; min_mm = mm; min_gg = gg; else if (aa == min_aa && mm < min_mm) { min_mm = mm; min_gg = gg; else if (aa == min_aa && mm == min_mm && gg < min_gg) min_gg = gg; while(gg!= 0 mm!= 0 aa!= 0); INPUT VALUTO LA DATA MINIMA printf("la data minima e': %d/%d/%d\n", min_gg, min_mm, min_aa); OUTPUT system("pause"); return(0); 10
11 Esercizio 1.3 Acquisisca da tastiera 2 frazioni Stampi a video la somma delle frazioni ridotta ai minimi termini. (Suggerimento: Per ridurre una frazione ai minimi termini per prima cosa calcolare il MCD.) 11
12 Esercizi sui cicli 1 parte Esercizio Acquisisca da tastiera 2 frazioni -Stampi a video la somma delle frazioni ridotta ai minimi termini. (Suggerimento: Per ridurre una frazione ai minimi termini per prima cosa calcolare il MCD.) Impostiamo la solita struttura di partenza di un programma C #include <stdio.h> #include <stdlib.h> /* * Nome : main * Scopo : Stampa la frazione somma * ridotta ai minimi termini * Input : -- * Output: 0 se il programma termina * correttamente */ int main() {... system("pause"); return(0); Implementiamo la prima parte della consegna (INPUT) - Acquisisca da tastiera 2 frazioni -Stampi a video la somma delle frazioni ridotta ai minimi termini. (Suggerimento: Per ridurre una frazione ai minimi termini per prima cosa calcolare il MCD.) Imposto le istruzioni di input... printf("digita la 1^ frazione (A/B): "); scanf("%d/%d", &num1, &den1); printf("digita la 2^ frazione (C/D): "); scanf("%d/%d", &num2, &den2); e dichiaro le variabili necessarie. // Dichiarazione delle variabili... int num1, num2, den1, den2; 12
13 Esercizi sui cicli 1 parte - Acquisisca da tastiera 2 frazioni - Stampi a video la somma delle frazioni ridotta ai minimi termini. (Suggerimento: Per ridurre una frazione ai minimi termini per prima cosa calcolare il MCD.) num 1 + den 1 num 2 den 2 num 1* den 2 + num 2 * den1 = = den1* den 2 num den - Acquisisca da tastiera 2 frazioni - Stampi a video la somma delle frazioni ridotta ai minimi termini. (Suggerimento: Per ridurre una frazione ai minimi termini per prima cosa calcolare il MCD.) Per determinare il MCD tra num e den posso seguire questa procedura: Memorizzo nella variabile min il valore più basso tra il numeratore e denominatore della frazione somma. Partendo da 1 fino a minestraggo tutti i divisori sia di numche di den. L ultimo divisoretrovatoèil MCD. ALGORITMO ALTERNATIVO PER DETERMINARE IL MCD: a) imposto mcd=minimo(num,den) b) Se mcd==1 allora termino saltando allo step d) c) Se num e den sono divisibili per mcd allora mcd è il MCD e termino saltando a d) altrimenti decremento mcd e ripeto lo step corrente c) d) Fine. Calcolo la frazione somma... num = num1 * den2 + num2 * den1; den = den1 * den2; e aggiungo le nuove variabili utilizzate. // Dichiarazione delle variabili... int num, den; Per ridurre ai minimi termini basta dividere il numeratore e il denominatore per il massimo comune divisore tra num e den. if (num > den) min = den; else min = num; for (i = 1; i <= min ; i++) if ( num % i == 0 && den %i == 0) mcd = i; Esercizio 1.3 Quindi aggiungo le variabili appena utilizzate. // Dichiarazione delle variabili... int min, mcd, i; printf ("Frazione somma ridotta: %d/%d\n\n", num/mcd, den/mcd); Stampo la frazione somma ridotta 13
14 Esercizi sui cicli 1 parte Soluzione completa: /************************************************************************** * Nome: lab4-frazioni.c * * Autore: Alessandro Saetti * * Data: 16/2/10 * **************************************************************************/ #include <stdio.h> #include <stdlib.h> /* * Nome: main * Scopo: Stampa la frazione somma ridotta ai minimi termini * Input: -- * Output: 0 se il programma termina correttamente */ int main() { int num1, num2, den1, den2, num, den, min, mcd, i; printf("digita la 1^ frazione (A/B): "); scanf("%d/%d", &num1, &den1); printf("digita la 2^ frazione (C/D): "); scanf("%d/%d", &num2, &den2); num = num1 * den2 + num2 * den1; den = den1 * den2; if (num > den) min = den; else min = num; for (i = 1; i <= min ; i++) if ( num % i == 0 && den %i == 0) mcd = i; INPUT CALCOLO LA FRAZIONE SOMMA E LA RIDUCO AI MINIMI TERMINI printf ("Frazione somma ridotta: %d/%d\n\n", num/mcd, den/mcd); system("pause"); return(0); OUTPUT Esercizio
15 Esercizi sui vettori (2º parte) 4. Inizializzi un vettore di 1000 elementi con numeri casuali compresi tra 1 e 100 (estremi inclusi). Calcoli la media dei numeri presenti nel vettore. 5. Acquisisca da tastiera un numero intero positivo n, ripetendo l acquisizione qualora il numero fosse negativo o superiore a Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.) 6. Inizializzi e stampi a video una matrice M di 10 righe e 20 colonne con numeri casuali interi compresi tra 0 ed 1; Inizializzi e stampi un vettore di 10 elementi con i numeri interi corrispondenti alla rappresentazione decimale dei numeri binari che compaiono (con notazione posizionale) sulle righe della matrice M. 15
16 Esercizio 1.4 Inizializzi un vettore di 1000 elementi con numeri casuali compresi tra 1 e 100 (estremi inclusi). Calcoli la media dei numeri presenti nel vettore. 16
17 Esercizi sui vettori 2 parte -Inizializzi un vettore di 1000 elementi con numeri casuali compresi tra 1 e 100 (estremi inclusi). -Calcoli la media dei numeri presenti nel vettore. Impostiamo la solita struttura di partenza di un programma C - Inizializzi un vettore di 1000 elementi con numeri casuali compresi tra 1 e 100 (estremi inclusi). - Calcoli la media dei numeri presenti nel vettore. Ricordiamoci di dichiarare le variabili utilizzate // Dichiarazione delle variabili... #define DIM 1000; int i, vet[dim]; Aggiungiamo a S in successione i valori che vengono via generati Esercizio 1.4 #include <stdio.h> #include <stdlib.h> /* * Nome: main * Scopo: Stampa la media dei numeri in un vettore * Input: -- * Output: 0 se il programma termina correttamente */ int main() {... system("pause"); return(0); Per generare i numeri casuali sfruttiamo la funzione rand() for (i=0; i < DIM; i++) vet[i] = rand() % 100+1; 17
18 Esercizi sui vettori 2 parte -Inizializzi un vettore di 1000 elementi con numeri casuali compresi tra 1 e 100 (estremi inclusi). - Calcoli la media dei numeri presenti nel vettore. Calcoliamo la somma totale dei valori generati casualmente. Per ottenere la media divido la somma totale per il numero DIM di valori generati. Dichiariamo le variabili #include <stdio.h>... // Dichiarazione variabili... int somma; float media;... Nel ciclo for aggiungiamo le istruzioni che ci consentono di calcolare la somma totale dei valori generati somma=0; for (i=0; i < DIM; i++) { vet[i] = rand() % ; somma += vet[i]; Poiché la variabile somma è un int, per evitare di perdere nella divisione tra interi la parte decimale, effettuo un cast (conversione di tipo) a float della variabile somma media = (float)somma / DIM; printf("media: %.2f\n\n", media); Esercizio 1.4 Per evitare che rand() generi sempre la stessa sequenza inizializzo il generatore dei numeri casuali con la funzione srand() #include <time.h> srand(time(null)); 18
19 Esercizi sui vettori 2 parte Soluzione completa: /************************************************************************** * Nome: lab1-media.c * * Autore: Alessandro Saetti * * Data: 23/2/10 * **************************************************************************/ #include <stdio.h> #include <stdlib.h> #include <time.h> #define DIM 1000 /* * Nome: main * Scopo: Stampa la media dei numeri in un vettore * Input: -- * Output: 0 se il programma termina correttamente */ int main() { int i, vet[dim], somma = 0; float media; srand(time(null)); for (i=0; i < DIM; i++) { vet[i] = rand() % ; somma += vet[i]; media = (float)somma / DIM; printf("media: %.2f\n\n", media); Esercizio 1.4 system("pause"); return 0; 19
20 Esercizio 1.5 Acquisisca da tastiera un numero intero positivo n, ripetendo l acquisizione qualora il numero fosse negativo o superiore a Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.) 20
21 Esercizi sui vettori 2 parte -Acquisisca da tastiera un numero intero positivo n, ripetendo l acquisizione qualora il numero fosse negativo o superiore a Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.). Impostiamo la struttura di partenza di un programma C Esercizio 1.5 #include <stdio.h> #include <stdlib.h> /* * Nome: main * Scopo: Stampa conversione base 2 * Input: -- * Output: 0 se il programma termina correttamente */ int main() {... system("pause"); return(0); - Acquisisca da tastiera un numero intero positivo n, ripetendo l acquisizione qualora il numero fosse negativo o superiore a Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.). Ripeto finché i valori digitati sono fuori dall intervallo [0,1023] // Dichiarazione variabili... int dec; printf("immetti un intero (<1024 e >=0)):\n"); do { printf("-> "); scanf("%d", &dec); while (dec<0 dec>1023); Dichiarazione variabili Spiego cosa voglio Leggo il numero Se non appartiene a [0,1023] ripeto la lettura 21
22 Esercizi sui vettori 2 parte Esercizio Acquisisca da tastiera un numero intero positivo n, ripetendo l acquisizione qualora il numero fosse negativo o superiore a Stampi a video la conversione di n in base 2. (Suggerimento: Utilizzare un vettore per memorizzare i resti delle divisioni.). Per ottenere la rappresentazione in base 2 estraggo la sequenza dei resti della divisione per 2 e li memorizzo in un array. Stampo poi in ordine inverso tale sequenza. Dichiarazione e inizializzazione variabili -Calcolo il resto della divisione per 2 e lo aggiungo nell array bin - Determino il nuovo quoziente dec Se il nuovo quoziente decnon èzero calcolo il resto successivo Stampo in ordine inverso la sequenza dei resti int n=0, bin[10], i; printf("conversione in base 2 di %d: ", dec); do { bin[n] = dec % 2; dec = dec /2; n++; while (dec!= 0); for (i = n-1; i >=0; i--) printf("%d", bin[i]); printf("\n\n"); 22
23 Esercizi sui vettori 2 parte Soluzione completa: /************************************************************************** * Nome: lab2-dectobin.c * * Autore: Alessandro Saetti * * Data: 23/2/10 * **************************************************************************/ #include <stdio.h> #include <stdlib.h> /* * Nome: main * Scopo: Stampa conversione base 2 * Input: -- * Output: 0 se il programma termina correttamente */ int main() { int dec, bin[10], i, n = 0; printf("immetti un intero (positivo minore di 1024):\n"); do { printf("-> "); scanf("%d", &dec); while(dec < 0 dec > 1023); printf("conversione in base 2 di %d: ", dec); do { bin[n] = dec % 2; dec = dec /2; n++; while (dec!= 0); for (i = n-1; i >=0; i--) printf("%d", bin[i]); printf("\n\n"); Esercizio 1.5 system("pause"); return 0; 23
24 Esercizio 1.6 Inizializzi e stampi a video una matrice M di 10 righe e 20 colonne con numeri casuali interi compresi tra 0 ed 1; Inizializzi e stampi un vettore di 10 elementi con i numeri interi corrispondenti alla rappresentazione decimale dei numeri binari che compaiono (con notazione posizionale) sulle righe della matrice M. 24
25 Esercizi sui vettori 2 parte -Inizializzi e stampi a video una matrice M di 10 righe e 20 colonne con numeri casuali interi compresi tra 0 ed 1; -Inizializzi e stampi un vettore di 10 elementi con i numeri interi corrispondenti alla rappresentazione decimale dei numeri binari che compaiono (con notazione posizionale) sulle righe della matrice M Impostiamo la struttura di partenza del nostro programma -Inizializzi e stampi a video una matrice M di 10 righe e 20 colonne con numeri casuali interi compresi tra 0 ed 1; -Inizializzi e stampi un vettore di 10 elementi con i numeri interi corrispondenti alla rappresentazione decimale dei numeri binari che compaiono (con notazione posizionale) sulle righe della matrice M Genero dei numeri casuali 0 o 1, li stampo per controllo e li memorizzo nella matrice M. Se inizializzo la sequenza casuale con srand(time(null)) posso ottenere, per ogni esecuzione, delle sequenze di bit sempre differenti. Esercizio 1.6 #include <stdio.h> #include <stdlib.h> /* Nome : main * Scopo : Stampa conversioni in base 10 di numeri * binari su righe di matrice * Input : -- * Output: 0 se il programma termina correttamente */ int main() {... system("pause"); return(0); #define DIM1 10 #define DIM2 20 Ricordiamoci di dichiarare le variabili utilizzate int M[DIM1][DIM2], i, j; Memorizziamo i valori generati in una matrice DIM1xDIM2 for (i=0; i < DIM1; i++) { for (j=0; j < DIM2; j++) { M[i][j]=rand()%2; printf("%2d",m[i][j]); printf("\n"); 25
26 Esercizi sui vettori 2 parte Esercizio 1.6 -Inizializzi e stampi a video una matrice M di 10 righe e 20 colonne con numeri casuali interi compresi tra 0 ed 1; -Inizializzi e stampi un vettore di 10 elementi con i numeri interi corrispondenti alla rappresentazione decimale dei numeri binari che compaiono (con notazione posizionale) sulle righe della matrice M float powf(float b, float x) => richiede #include <math.h> #include <math.h>... for (i=0; i < DIM1; i++) { for (j=0; j < DIM2; j++) V[i]+=M[i][j]*powf(2,DIM2-j-1); printf("conversione decimale per riga #%d: %d\n", i+1, V[i]); Per evitare che durante la compilazione appaia l avvertimento: [Warning] converting to `int' from `float mettiamo un cast a int prima della funzione powf() Per ogni riga i-esima della matrice M calcolo la somma di potenze (decrescente!) di 2 dove i coefficienti sono costituiti dagli elementi sulla riga i-esima della matrice. Tale valore viene poi memorizzato in V[i]. 26
27 Esercizi sui vettori 2 parte Soluzione completa: /************************************************************************** * Nome: lab4-bintodec.c * * Autore: Alessandro Saetti * * Data: 23/2/10 * **************************************************************************/ #include <stdio.h> #include <stdlib.h> #include <math.h> #define DIM1 10 #define DIM2 20 /* Nome: main * Scopo: Stampa conversioni in base 10 di numeri binari su righe di matrice * Input: -- * Output: 0 se il programma termina correttamente */ int main() { int M[DIM1][DIM2], i, j, V[DIM1]={0; for (i=0; i < DIM1; i++) { for (j=0; j < DIM2; j++) { M[i][j]=rand()%2; printf("%2d",m[i][j]); printf("\n"); for (i=0; i < DIM1; i++) { for (j=0; j < DIM2; j++) { V[i]+=M[i][j]*powf(2,DIM2-j-1); printf("conversione decimale per riga #%d: %d\n", i+1, V[i]); system("pause"); return(0); Esercizio
28 Esercizi sui cicli (per casa) 1. : Acquisisca da tastiera numeri interi fintantoché il numero immesso è negativo. Stampi a video i primi 5 anni bisestili superiori al numero acquisito. (Suggerimento: Un anno è bisestile se è divisibile per 4 ma non per 100 eccetto per quegli anni divisibili per 400). 2. : Acquisire da tastiera la lunghezza dei tre lati di un triangolo fintantoché le lunghezze acquisite non sono positive e non soddisfano la disuguaglianza triangolare (la somma del lato maggiore è inferiore alla somma degli altri lati) Stampi il perimetro del triangolo. (Suggerimento: Ad ogni iterazione calcolare il massimo lato acquisito e la somma degli altri due dati) 28
29 Esercizi sui cicli (per casa) 3. Acquisire da tastiera un numero intero n (ripetendo l acquisizione finché vengono immessi numeri negativi) Acquisire successivamente da tastiera n numeri interi Stampare a video la media degli n numeri acquisiti 4. Acquisisca da tastiera due numeri interi corrispondenti al numero di giorni in un mese ed al giorno della settimana in cui il mese inizia. Stampi a video il calendario del mese. Ad esempio: Inserire il numero di giorni del mese: 31 Inserire il giorno della settimana in cui il mese inizia (1=Domenica, 7=Sabato): 3 D L M M G V S
30 Esercizi sui vettori (per casa) 5. : Inizializzi un vettore di 100 elementi con numeri casuali compresi tra -50 e 50 Stampi a video il minimo numero n nel vettore per il quale esista un solo numero nel vettore più piccolo di n 6. Acquisisca da tastiera un numero intero n maggiore di 10 e minore di 100, ripetendo l acquisizione qualora il numero non rispettasse i requisiti richiesti. Inizializzi un vettore di 20 elementi con numeri casuali compresi tra 10 ed n. Stampi a video il numero contenuto nel vettore con il maggior numero di divisori. 30
31 Esercizi sui vettori (per casa) 7. Inizializzi e stampi a video una matrice M di 4 righe e 3 colonne con numeri casuali interi compresi tra 1 e 9; Stampi a video la somma delle righe e la somma delle colonne di M 8. Inizializzi e stampi a video una matrice M di 4 righe e 5 colonne con numeri casuali interi compresi tra 1 e 9; Inizializzi un vettore V con 5 numeri interi acquisiti da tastiera; Stampi a video il prodotto (righe per colonne) tra la matrice M e il vettore V. 31
Cicli annidati e matrici di variabili
Linguaggio C Cicli annidati e matrici di variabili 1 Cicli annidati! 2 cicli FOR annidati richiedono 2 differenti variabili contatori! Il contatore del ciclo interno può dipendere dal contatore del ciclo
DettagliUniversità degli Studi di Brescia. Vettori di variabili. ! Sono variabili aggregate in grado di memorizzare una collezione (organizzata) di oggetti
Linguaggio C 1! Sono variabili aggregate in grado di memorizzare una collezione (organizzata) di oggetti Oggetti dello stesso tipo Identificazione univoca degli oggetti! Il tipo più semplice ha una sola
DettagliIntroduzione al C. Esercitazione 6. Raffaele Nicolussi. Corso di Fondamenti di Informatica Ingegneria Clinica
Corso di Fondamenti di Informatica Ingegneria Clinica Esercitazione 6 Raffaele Nicolussi Esercizio 1 Si scriva una funzione in linguaggio C che riceve in ingresso un numero intero A letto da tastiera,
DettagliEsercitazione 2. Corso di Fondamenti di Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 2 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliLinguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C strutture di controllo: strutture iterative Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Strutture iterative
Dettagli3 Costrutti while, for e switch
Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione dei costrutti while, for e switch. I costrutti per costruire cicli in C sono il while, la variante
DettagliProgrammazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 3 - Array Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti di.unipi.it 2. Dipartimento
DettagliESERCIZI DI PROGRAMMAZIONE. - condizionali e cicli -
ESERCIZI DI PROGRAMMAZIONE - condizionali e cicli - Elementi di Informatica e Programmazione Università di Brescia 1 Esercizio 1: dal tema d esame ING-INF del 28 gennaio 2009 Si sviluppi un programma in
DettagliAlcuni esercizi. 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli
Alcuni esercizi 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Stampa di voti Esempio 1 (switch) Realizzare un programma che legge da input un voto (carattere tra A ed E ) e ne
DettagliUn esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);
Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i
DettagliEsercitazione 6. Array
Esercitazione 6 Array Arrays Array (o tabella o vettore): è una variabile strutturata in cui è possibile memorizzare un numero fissato di valori tutti dello stesso tipo. Esempio int a[6]; /* dichiarazione
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
DettagliEsercizio 1. Esercizio 1 Soluzione
Esercizio 1 I numeri complessi Data la notazione cartesiana di un numero complesso (in parte reale ed immaginaria), Realizzare una procedura che ne restituisca la notazione polare (tramite parametri passati
Dettaglisum = 0; positivenumbers = 0; /* Passo 1 */ printf("introduci i numeri (0 per finire): "); scanf("%d", &number);
/ Questo programma legge numeri interi, positivi e negativi, finche' l'utente non digita il valore 0 (valore di terminazione). Quando l'utente ha finito di immettere gli interi, il programma stampa la
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 1 Obiettivi di questa esercitazione 1. Array 2 Esercizio 1 Creare un programma che legga da input un numero non noto a priori di interi (al più 10) terminati da 0.
DettagliCicli annidati ed Array multidimensionali
Linguaggio C Cicli annidati ed Array multidimensionali Cicli Annidati In C abbiamo 3 tipi di cicli: while(exp) { do { while(exp); for(exp;exp;exp3) { Cicli annidati: un ciclo all interno del corpo di un
DettagliIstruzioni iterative (o cicliche)
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Istruzioni iterative (o cicliche) Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria
DettagliEsercitazione 7. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 7 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
Dettagli- Dispensa III - PROGRAMMAZIONE C (Parte I)
Elementi di Informatica e Programmazione - Dispensa III - PROGRAMMAZIONE C (Parte I) Alessandro Saetti (email: alessandro.saetti@unibs.it) Università degli Studi di Brescia 1 Linguaggi di Programmazione
DettagliPROGRAMMAZIONE: ESERCITAZIONE N. 6
PROGRAMMAZIONE: ESERCITAZIONE N. 6 Esercizi su stru+ure condizionali e itera1ve Conoscenze richieste: LC1+LC2+LC3+LC4+LC5+LC6 Esercizio 1 Acquisire un numero positivo N e calcolarne la radice quadrata
Dettagli1 (4) 2 (4) 3 (12) 4 (6) 5 (6)
CORSO DI LAUREA IN INGEGNERIA ELETTRICA, CHIMICA e MATERIALI Informatica B, C Anno Accademico 2016-2017 Proff. Danilo ARDAGNA Prima Prova in Itinere 4.5.2017 Cognome Nome Matricola Firma Durata: 2h Valutazioni
DettagliFondamenti di Programmazione
Fondamenti di Programmazione Ingegneria dell Automazione Industriale Ingegneria Elettronica e delle Comunicazioni Alessandro Saetti Marco Sechi e Andrea Bonisoli (email: {alessandro.saetti,marco.sechi,andrea.bonisoli}@unibs.it)
DettagliEsercitazione 5. Procedure e Funzioni Il comando condizionale: switch
Esercitazione 5 Procedure e Funzioni Il comando condizionale: switch Comando: switch-case switch (espressione) { /* espressione deve essere case costante1: istruzione1 di tipo int o char */ [break]; case
DettagliESERCIZI DI PROGRAMMAZIONE DA SVOLGERE INDIVIDUALMENTE - parte 1 -
ESERCIZI DI PROGRAMMAZIONE DA SVOLGERE INDIVIDUALMENTE - parte 1 - Elementi di Informatica e Programmazione Università di Brescia 1 1: ESERCIZI DI BASE - di livello di difficoltà inferiore rispetto all
DettagliEsercizio 1: calcolo insieme intersezione
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 3 Esercitazione: 19 ottobre 2005 Esercizi su array e matrici Esercizio 1: calcolo insieme intersezione Problema: *******************************************************************
DettagliESERCIZI DI PROGRAMMAZIONE DA TEMI D ESAME - vettori -
ESERCIZI DI PROGRAMMAZIONE DA TEMI D ESAME - vettori - Elementi di Informatica e Programmazione Università di Brescia 1 Esercizio 1 Sviluppare un programma che acquisisce dall utente al massimo 50 numeri
DettagliGli Operatori. Università degli Studi di Brescia
Linguaggio C Gli Operatori 1 Gli operatori! Costruiscono le espressioni del C! Specificano come devono essere manipolati gli operandi dell espressione! Il C definisce una moltitudine di operatori, quali
DettagliCorso di Informatica 1 Esercitazione n. 4
Corso di Informatica 1 Esercitazione n. 4 Marco Liverani Esercizio n. 1 Letti in input due numeri interi n > 0 e k > 1 costruire un array A di n numeri interi casuali minori di 100 che non siano multipli
DettagliIstruzioni iterative. Istruzioni iterative
Istruzioni iterative Esempio: Leggere 5 interi, calcolarne la somma e stamparli. Variante non accettabile: 5 variabili, 5 istruzioni di lettura, 5... int i1, i2, i3, i4, i5; scanf("%d", &i1):... scanf("%d",
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
DettagliArray Tipi di dato semplici e strutturati strutturati array elementi omogenei numero d ordine indice lunghezza dimensione
Array Tipi di dato semplici e strutturati i tipi di dato visti finora erano tutti semplici: int, char, float,... i dati manipolati sono spesso complessi (o strutturati) con componenti elementari o strutturate
DettagliInput / Output, Espressioni Condizionali e Cicli
LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Laboratorio di informatica LA Corso di laurea in Ingegneria Informatica - Anno Accademico 2007-2008 Input / Output, Espressioni Condizionali e
Dettagligiapresente( ) leggi( ) char * strstr(char * cs, char * ct) NULL
Materiale di ausilio utilizzabile durante l appello: tutto il materiale è a disposizione, inclusi libri, lucidi, appunti, esercizi svolti e siti Web ad accesso consentito in Lab06. L utilizzo di meorie
DettagliGli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento
Linguaggio C Gli Operatori Gli Operatori Gli operatori sono simboli (sia singoli caratteri che loro combinazioni) specificano come devono essere manipolati gli operandi dell espressione Operatori aritmetici
Dettagliwhile Istruzione while Cicli ed iterazioni Istruzioni di ripetizione in C Comportamento del while
icli ed iterazioni Sintassi dell istruzione Esercizio Media aritmetica Esecuzione del programma icli while annidati Esercizio Quadrato 2 Istruzioni di ripetizione in Nel linguaggio esistono tre distinte
DettagliELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli
ELEMENTI DI INFORMATICA L-B Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Testi di esami precedenti Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del
DettagliRealizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media.
Esercizio 1 Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media. #include Esercizio 1 - Soluzione int main() int num1, num2, num3, somma; float
DettagliScelte ed alternative. Esercizi risolti
1 Esercizio Indovina cosa... Esercizi risolti Determinare che cosa fa il seguente frammento di programma in linguaggio C: int a, b, c; scanf("%d", &a); scanf("%d", &b); if(a>b) { c = a ; a = b ; b = c
DettagliProgrammi su più moduli - Esempio
Programmi su più moduli - Esempio Calcolo del logaritmo in base qualunque Incapsulare la logica di calcolo in una funzione PASSO 1: definisco la dichiarazione della funzione (nome, parametri di input e
DettagliLinguaggio C. Condizioni composte (operatori logici)
Linguaggio C Condizioni composte (operatori logici) Università degli Studi di Brescia Prof. Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Condizioni composte Talvolta
DettagliEsercizio 1. Esercizio 1 - Soluzione
Esercizio 1 Progettare e Codificare in C un programma che permetta di Chiedere all utente quanti numeri vuole inserire Leggere i numeri inseriti dall utente e calcolare la somma dei fattoriali Esempio:
DettagliINFORMATICA. Strutture iterative
INFORMATICA Strutture iterative Strutture iterative Si dice ciclo (loop) una sequenza di istruzioni che deve essere ripetuta più volte consecutivamente. Si consideri ad esempio il calcolo del fattoriale
DettagliEsercitazione 5. Corso di Fondamenti di Informatica. Laurea in Ingegneria Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 5 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliLinguaggio C. tipi di dati definiti dall utente. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C tipi di dati definiti dall utente Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Tipi di dati in C Predefiniti
DettagliFondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni. Lab 06 Array" Lab06 1
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 06 Array" Lab06 1 Esercizio 1" n Creare un programma che legga da input un numero non noto a priori di interi
DettagliStrutture di iterazione
Strutture di iterazione 1. Leggi i programmi qui sotto e disegna le tabelle di traccia nelle situazioni seguenti: a. Nel primo e nel secondo programma viene inserito da tastiera il valore 2; b. Nel primo
DettagliEsercizi di programmazione in C
Esercizi di programmazione in C Esercizio 1 Scrivere un programma in linguaggio C che legga da tastiera una sequenza di lunghezza ignota a priori di numeri interi positivi. Il programma, a partire dal
DettagliEsercizio 1 - cicli. Esercizio 1 cicli - Soluzione
Sequenze di cifre Esercizio 1 - cicli Realizzare un programma che prende in input una sequenza di cifre (tra 1 e 9) e calcola la somma massima fra le sotto- sequenze di cifre non decrescente Il programma
DettagliEsercizi di MatLab. Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, A.A
Esercizi di MatLab Sommario Esercizi di introduzione a MatLab per il corso di Calcolo Numerico e Laboratorio, AA 2017 2018 Gli esercizi sono divisi in due gruppi: fondamentali ed avanzati I primi sono
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica 1
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa E04 Esempi di algoritmi e programmi C. Limongelli - A. Miola Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Esempi
DettagliEsercizio 1: calcolo del massimo di una sequenza (versione 1)
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 2 Esercitazione: 12 ottobre 2005 Primi esercizi in C Esercizio 1: calcolo del massimo di una sequenza (versione 1) Si legga
DettagliLaboratorio di Programmazione Laurea in Bioinformatica
Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.
DettagliLaboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007
Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 07/02/07 Nota Questi lucidi sono tratti
DettagliCorso di Fondamenti di Programmazione canale E-O ... Un esempio per iniziare. printf) Altri cenni su printf() Esercizi 8. (printf(
Corso di Fondamenti di Programmazione canale E-O Tiziana Calamoneri Il controllo del programma in C DD Cap. 3, pp.91-130 Un esempio per iniziare /* calcolo di 8!*/ #define C 8 int i=1; int fatt=1; while
DettagliProgrammazione di base
Fondamenti di Informatica Primo Appello 01-17 8 febbraio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene 10 domande,
DettagliEsercitazione 4. Comandi iterativi for, while, do-while
Esercitazione 4 Comandi iterativi for, while, do-while Comando for for (istr1; cond; istr2) istr3; Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istr1 2) se cond è vera vai al passo 3 altrimenti
DettagliEsercizio 2 (punti 7) Dato il seguente programma C: #include <stdio.h> int swap(int * nome, int length);
Fondamenti di Informatica L-A (A.A. 004/005) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista I Prova Intermedia del 11/11/004 - durata h - COMPITO B Esercizio 1 (punti 1) Una associazione di
DettagliPolitecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.
Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione prof. Lorenzo Porcelli e mail: genna18@iol.it sito: users.iol.it/genna18 Risoluzione di un problema Dato
Dettagli# include<stdio.h> int main() { // Dichiarazioni int n; int i;
/* CALCOLIAMO I DIVISORI DI UN NUMERO. INSERIAMO UN CONTROLLO CHE IL NUMERO SIA EFFETTIVAMENTE POSITIVO UTILIZZIAMO IL DO...WHILE PER SEMPLIFICARE IL CODICE # include int main() // Dichiarazioni
DettagliElementi di Informatica e Programmazione
Università degli Studi di Brescia Elementi di Informatica e Programmazione ESERCITAZIONE Docente: A. Saetti Esercitatori: M. Sechi, A. Bonisoli Vers. 04/10/2017 Docente: Alessandro Saetti Elementi di informatica
DettagliFunzioni di libreria. KP pp , , , 589, DD pp , , ,
Funzioni di libreria KP pp.112-115, 471-474, 573-575, 589, 598-601 DD pp.144-153, 307-313, 563-565, 588-591 Funzioni matematiche (1) KP p. 112,573 Il linguaggio C non contiene funzioni matematiche predefinite.
DettagliLe funzioni, e le istruzioni di input/output
Linguaggio C Le funzioni, e le istruzioni di input/output 1 Funzioni! Sono sottoprogrammi per svolgere un particolare compito! Sequenze di istruzioni (raggruppate tramite le parentesi graffe) alle quali
DettagliEsercitazione 11. Liste semplici
Esercitazione 11 Liste semplici Liste semplici (o lineari) Una lista semplice (o lineare) è una successione di elementi omogenei che occupano in memoria una posizione qualsiasi. Ciascun elemento contiene
DettagliIntroduzione a. Funzioni di Ingresso e Uscita. Compilazione
Introduzione a Funzioni di Ingresso e Uscita Compilazione 2 Come si termina...... un programma in esecuzione (processo)? Ctrl + C In UNIX ci si basa sul concetto di terminale Anche da GUI, quello che si
DettagliArray. Maurizio Palesi Salvatore Serrano. In C si possono definire tipi strutturati Vi sono due costruttori fondamentali
MASTER Information Technology Excellence Road (I.T.E.R.) Array Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Tipi di dato stutturati In C si possono
DettagliEsercizi di programmazione in linguaggio C - Costrutto iterazione
Esercizi di programmazione in linguaggio C - Costrutto iterazione prof. Roberto uligni 1. [potenze1] Scrivere un programma che visualizzi il valore di tutte le prime n potenze di 2 con n richiesto all'utente
DettagliFunzioni. Unità 1. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm
DettagliFondamenti di Programmazione
Fondamenti di Programmazione Ingegneria dell Automazione Industriale Ingegneria Elettronica e delle Comunicazioni Alessandro Saetti Marco Sechi e Andrea Bonisoli (email: {alessandro.saetti,marco.sechi,andrea.bonisoli}@unibs.it)
DettagliAlcuni esercizi. 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli
Alcuni esercizi 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Esercizio 1 (valutazione in cortocircuito) int main() int a=5, b=5, c=5; if (a>0 (a=a+1) ) printf( %d, a); if (b>0
DettagliProgrammazione di base
Fondamenti di Informatica Testo A Secondo Appello 016-17 febbraio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene
DettagliLinguaggio C - Array. Array: tipo nome_array[num_elementi]
Linguaggio C - Array Array: Gli array o vettori sono delle strutture dati in grado di contenere un insieme di valori tutti dello stesso tipo. Un array lo possiamo immaginare come un contenitore suddiviso
DettagliLABORATORIO DI FONDAMENTI DI INFORMATICA DIAGRAMMI DI FLUSSO E CODIFICA IN C DEGLI ALGORITMI
LABORATORIO DI ONDAMENTI DI INORMATICA DIAGRAMMI DI LUSSO E CODIICA IN C DEGLI ALGORITMI 1.INGEGNERIA ELETTRICA A.A. 2004-005 COPIA CONTROLLATA N 1 ING. G. GIORDANO INIZIO Inserire il numero N N
DettagliLIA. LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Elementi di informatica L
LIA - DEIS - Facoltà di Ingegneria - Università di Bologna Elementi di informatica L Corso di laurea in Ingegneria Chimica - Anno Accademico 2007-2008 Funzioni Esercizio 3.3 Si scriva un programma in linguaggio
Dettagli- Esercitazione IV Programmazione C Funzioni Alessandro Saetti
Elementi di Informatica e Programmazione - Esercitazione IV Programmazione C Funzioni Alessandro Saetti (email: alessandro.saetti@unibs.it) Università degli Studi di Brescia 1 Esercizio 1 Riempire una
DettagliEsercitazione 3. Corso di Fondamenti di Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 3 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliHOMEWORKS. in modo che il programma stampi N ripetizioni della stringa HelloWorld (su righe diverse), con N inserito dall utente.
HOMEWORKS Questi esercizi saranno proposti di tanto in tanto e forniti sempre SENZA soluzioni. Come materiale complementare ai libri di testo e alle lezioni frontali e di esercitazione, si consiglia di
DettagliProblemi e algoritmi. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 (da U. de' Liguoro - Alg. & Spe. 03/04)
Problemi e algoritmi Il che cosa e il come Il che cosa ed il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come
DettagliStrutture di iterazione
Strutture di iterazione 1. Leggi i programmi qui sotto e disegna le tabelle di traccia nelle situazioni seguenti: a. Nel primo e nel secondo programma viene inserito da tastiera il valore 2; b. Nel primo
DettagliProblemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come
Problemi e algoritmi Il che cosa e il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come effettuare un calcolo
DettagliIstruzioni di Ciclo. Unità 4. Domenico Daniele Bloisi
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm
DettagliLab 10 Passaggio per riferimento
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2009/2010 Lab 10 Passaggio per riferimento Lab10 1 Esercizio 1 I numeri complessi
Dettagliil precedente programma dichiara un vettore di interi di dimensione 10 e successivamente inserisce il valore 4 nel secondo elemento del vettore.
Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione dei vettori (ingl., array). La dichiarazione di un vettore di elementi omogenei in C avviene grazie
Dettaglia.a Codice corso: 21012, HOMEWORKS
HOMEWORKS Questi esercizi saranno proposti ogni 2 settimane e forniti sempre SENZA soluzioni. Come materiale complementare ai libri di testo e alle lezioni frontali e di esercitazione, si consiglia di
DettagliLaboratorio 1. 2) All interno della directory c:\temp\cognome\codici creare il file sorgente hello.c contenente il seguente codice:
Corso di Ingegneria Biomedica Corso di Ingegneria Elettronica Insegnamento di Informatica I a.a. 2007-08 Laboratorio 1 Durante le esercitazioni verra utilizzato il compilatore a riga di comando DJGPP,,
DettagliEsercizi Programmazione I
Esercizi Programmazione I 9 Novembre 201 Esercizio 1 Valutare e dare il tipo delle seguenti espressioni condizionali. 1 char a= a, b= b ; // a ha v a l o r e decimale 97 2 i n t i= 1, j= 2 ; 3 double x=
DettagliPrimo programma in C
Primo programma in C Compilare il primo programma Un semplice programma L ambiente di sviluppo Dev-C++ Codifica del programma Compilazione e correzione errori Esecuzione e verifica 2 Compilare il primo
DettagliProva di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:
Prova di Laboratorio del 12.1.2005 [durata 90 min.] Corso A-B di Programmazione (A.A. 2004/05) 1. Leggere da tastiera un insieme di numeri interi ed inserirli in un vettore A 2. Calcolare tramite una funzione
DettagliLinguaggio C - le strutture di controllo: sequenza, selezione, iterazione
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione
DettagliProblemi, algoritmi e oggetti
Fondamenti di informatica Oggetti e Java Luca Cabibbo Capitolo 5 Marzo 2007 1 Fondamenti di informatica: Oggetti e Jav Contenuti... Problemi e algoritmi comprensione del problema identificazione di un
DettagliA lezione sono stati presentati i seguenti passi per risolvere un problema:
Calcolo delle radici di un polinomio Problema: Dati i coefficienti a,b,c di un polinomio di 2 grado della forma: ax^2 + bx + c = 0, calcolare le radici. A lezione sono stati presentati i seguenti passi
DettagliStringhe di caratteri
Linguaggio C Stringhe di caratteri 1 Variabili e costanti stringa! Una stringa letterale è una sequenza di caratteri racchiusa tra doppi apici! Può essere scritta su più righe utilizzando il backslash
DettagliPROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
DettagliEsercitazione 8. Array multidimensionali
Esercitazione 8 Array multidimensionali Prodotto di due matrici Una matrice può essere rappresentata in C con un array bidimensionale. Consideriamo il seguente problema: date due matrici mat1[n] [P] mat2[p]
Dettagliacquisizione numero elementi del primo insieme e del secondo insieme, finché elprimoinsieme oppure elsecondoinsieme > EL_INS
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 3 Esercitazione: 20 ottobre 2004 Esercizi su array e applicazione delle regole di conversione di tipo Esercizi presenti:
DettagliInformatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica
Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,
DettagliElementi di C++ di base
Elementi di C++ di base Corso di Programmazione 3 - Ingegneria dell Informazione e dell Organizzazione 10 ottobre, 2001 Gino Perna Esempi di semplici programmi in C++ Il programma più semplice consiste
DettagliEsercizio 1 - Soluzione
Esercizio 1 Realizzare un programma che provveda a leggere da input delle parole separate da spazi (stringhe di al più 63 caratteri) e le ripeta su standard output (servizio di echo ). Il programma deve
DettagliEsercitazione 3. Espressioni booleane I comandi if-else e while
Esercitazione 3 Espressioni booleane I comandi if-else e while Esercizio Si consideri la seguente istruzione: if (C1) if (C2) S1; else S2; A quali delle seguenti interpretazioni corrisponde? if (C1) if
DettagliFondamenti di Informatica
Fondamenti di Informatica Prima prova intermedia - 11 Novembre 2009 Si risolvano i seguenti esercizi. Il compitino prevede un punteggio massimo di 15/14-esimi, cui andranno sommati i punti ottenuti nel
DettagliLaboratorio di Programmazione: Linguaggio C Lezione 9 del 27 novembre 2013
Laboratorio di Programmazione: Linguaggio C Lezione 9 del 27 novembre 2013 Damiano Macedonio Giochi d Azzardo Note Iniziali Per generare un numero casuale basta includere la libreria stdlib.h e utilizzare
Dettagli