Esempio (if): equazione di secondo grado

Похожие документы
Esercitazione 3. Espressioni booleane I comandi if-else e while

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);

Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Esercizi Programmazione I

Istruzioni iterative (o cicliche)

Esercizi di programmazione in C

PROGRAMMAZIONE: Le strutture di controllo

Esercitazione 3. Oggi sono stati effettuati semplici esercizi in C utilizzando le seguenti istruzioni: if...else, while, printf, scanf

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Reti di Calcolatori

Caricare un numero n float, calcolare e stampare il quadrato e il cubo di n. Diagramma di flusso

Creare una funzione float square(float x). La funzione deve restituire il quadrato del parametro x.

Esercitazione 6. Array

Polinomio di secondo grado: Calcolo delle soluzioni di una equazione di secondo grado: import GraphicIO.*; public class Polinomio2 {

SOLUZIONE ESERCIZIO 1

Istruzioni Condizionali

ESEMPIO: le variabili LETTURA/SCRITTURA DI VARIABILI. Specifica Leggere da tastiera un intero, un carattere, un float e un double. Stamparli a video.

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN

Istruzioni Condizionali in C

Esercizi C su array e matrici

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Scelte ed alternative. Esercizi risolti

Introduzione alla programmazione in C(++)

Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010

Laboratorio di programmazione

Esercitazione 4. Comandi iterativi for, while, do-while

Primi programmi in C

Esercitazione 5. Procedure e Funzioni Il comando condizionale: switch

Le strutture di controllo in C++

Teorema di Pitagora. Triangoli con angoli di 45, 30 e 60. Eserciziario con soluzioni. - 1

Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.

Ministero della Difesa Direzione Generale per il Personale Militare I Reparto

TEST SULLE COMPETENZE Classe Seconda

Array Tipi di dato semplici e strutturati strutturati array elementi omogenei numero d ordine indice lunghezza dimensione

Istruzioni iterative. Istruzioni iterative

Elementi di C++ di base

Primo programma in C Esercizi risolti

Questo teorema era già noto ai babilonesi, ma fu il matematico greco Pitagora, intorno al 500 a.c., a darne una descrizione precisa.

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Costrutti condizionali e iterativi

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Capitolo 1 Fondamenti di Informatica - Esercizi

Esercitazione 3. Corso di Fondamenti di Informatica

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Linguaggio C: le funzioni

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Corso di Informatica 1 Esercitazione n. 4

Strutture di controllo in C++

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche

Fondamenti di Informatica T-1 Modulo 2

Diagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop

Proprietà dei triangoli e criteri di congruenza

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Programmazione web lato client con JavaScript. Marco Camurri 1

INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan

Corso di Informatica Medica Esercitazione 1I ! Alessandro A. Nacci - alessandronacci.com

Non ci sono vincoli sul tipo degli elementi di un vettore Possiamo dunque avere anche vettori di

Fondamenti di Informatica T-1 Modulo 2

Esercizi svolti durante le ore di Informatica e Sistemi automatici nelle classi del Liceo Scientifico Tecnologico del Liceo Milli di Teramo

Errori frequenti Cicli iterativi Array. Cicli e array. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A.

SISTEMI DI RIFERIMENTO SU UNA RETTA E SU UN PIANO

La selezione binaria

ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia)

soluzione in 7 step Es n 208

1) Premessa: Al posto dei numeri posso utilizzare delle.. m) La differenza tra due numeri qualsiasi:...

Транскрипт:

Esempio (if): equazione di secondo grado /* Programma che calcola le radici di un equazione di secondo grado: ax2+bx+c=0 */ #include <math.h> /*libreria standard matematica*/ main() { float a,b,c; /*coefficienti e termine noto*/ float d,x1,x2; scanf("%f%f%f",&a,&b,&c); if ((b*b) < (4*a*c)) printf("radici complesse"); else { d=sqrt(b*b-4*a*c); /*sqrt: funzione di libreria */ x1=(-b+d)/(2*a); x2=(-b-d)/(2*a); printf("\nradici reali: %f\t%f",x1,x2);

Esempio (if): sistema lineare Risolvere un sistema lineare di due equazioni in due incognite: a1 x + b1 y = c1 a2 x + b2 y = c2 Utilizzeremo le formule: x = (c1 b2-c2 b1) / (a1 b2- a2 b1) = XN / D y = (a1 c2- a2 c1) / (a1 b2- a2 b1) = YN / D

Esempio: soluzione main() { float A1,B1,C1,A2,B2,C2,XN,YN,D; float X,Y; scanf("%f%f%f",&a1,&b1,&c1); scanf("%f%f%f",&a2,&b2,&c2); XN = (C1*B2 - C2*B1); D = (A1*B2 - A2*B1); YN = (A1*C2 - A2*C1); if (D == 0) {if ((XN == 0) (YN==0)) printf("sist. indeterm.\n"); else printf("nessuna soluz.\n"); else {X= XN/D; Y= YN/D; printf("%f%f\n",x,y);

ESERCIZIO Dati tre valori a, b, c che rappresentano le lunghezze di tre segmenti, valutare se possono essere i tre lati di un triangolo, e se sì deciderne il tipo (scaleno, isoscele, equilatero). Vincolo: la somma di ogni coppia di lati deve essere maggiore del terzo lato. Rappresentazione delle informazioni: la variabile booleana triangolo indica se i tre segmenti possono costruire un triangolo le variabili booleane scaleno, isoscele e equil, indicano il tipo di triangolo.

ESERCIZIO Specifica: se a+b>c and a+c>b and b+c>a triangolo = vero se a=b=c { equil=isoscele=vero scaleno=falso altrimenti se a=b o b=c o a=c { isoscele=vero; equil=scaleno=falso altrimenti { scaleno=vero; equil=isoscele=falso altrimenti triangolo = falso

Soluzione: main (){ float a, b, c; int triangolo, scaleno, isoscele, equil; scanf("%f%f%f", &a, &b, &c); triangolo = (a+b>c); if (triangolo) { if ((a==b) && (b==c)) { equil=isoscele=1; scaleno=0; else if (a==b b==c a==c) { isoscele=1; scaleno=equil=0; else { scaleno=1; isoscele=equil=0; /* continua..*/

Soluzione if (triangolo) if (equil) printf("\nequilatero!\n"); else if (isoscele) printf("\nisoscele!\n"); else printf("\nscaleno!\n"); else printf("\n Non e` un triangolo..\n"); /* fine main*/

/* Media di N voti*/ main() { int voto,n,i; float media, sum; printf( Quanti sono i voti? ); scanf("%d",&n); input sum = 0; i = 1; inizializzazione while (i <= N) { printf( Dammi il voto n.%d:,i); scanf("%d",&voto); ciclo sum=sum+voto; i=i+1; media = sum/n; output printf("risultato: %f",media); ESEMPIO :

ESEMPIO : /* moltiplicazione come sequenza di somme */ main() { int X,Y,Z; printf( Dammi i fattori: ); scanf("%d%d",&x,&y); Z=0; while ( X!=0 ) { /* corpo ciclo while */ Z=Z+Y; X=X-1; printf("%d",z);

ESEMPIO ISTRUZIONE DI CICLO /* Calcolo del fattoriale di un numero N */ main() { int F, N, I; F=1; /* inizializzazione del fattoriale*/ I=0; /* inizializzazione del contatore*/ printf( Dammi N: ); scanf("%d",&n); while ( I < N ) { F = (I+1)*F; I = I+1; printf( Il fattoriale e %d, F);

Esempio: /* Calcolo del fattoriale di un numero N */ main() { int F, N, I; F=1; /* inizializzazione del fattoriale*/ I=0; /* inizializzazione del contatore*/ printf( Dammi N: ); scanf("%d",&n); do { F = (I+1)*F; I = I+1; while ( I < N ) printf( Il fattoriale e %d, F);

Nell'istruzione while, la condizione di ripetizione viene verificata all inizio di ogni ciclo... somma=0; j=1; while e do inizializzazione while ( j <= n ) condizione { somma = somma + j; j++; modifica Nell istruzione do la condizione di ripetizione viene verificata alla fine di ogni ciclo /* In questo caso: n > 0 */ somma = 0; j = 1; inizializzazione do { somma = somma + j; j++; modifica while ( j <= n ); condizione

ISTRUZIONE for Sintassi: for( <espr-iniz> ; <cond> ; <espr-modifica> ) <istruzione> espr-inizializzazione Struttura del while condizione vera istruzione falsa espr-modifica

Esempio: for void main() /* Media di N voti*/ { int voto,n,i; float media, sum; printf( Quanti sono i voti? ); scanf("%d",&n); sum = 0; for( i=1 ; i<=n ; i++ ) { printf( Dammi il voto n.%d:,i); scanf("%d",&voto); sum=sum+voto; media=sum/n; printf("risultato: %f",media); sum = 0; i = 1; while (i <= N) { printf( Dammi il voto scanf("%d",&voto); sum=sum+voto; i=i++;

Esempio for: fattoriale /* Calcolo del fattoriale di un numero N */ void main() { int N, F, i; printf( Dammi N: ); scanf("%d",&n); F=1; /*inizializzazione del fattoriale*/ for ( i=1 ; i<=n ; i++ ) F=F*i; printf("%s%d","fattoriale: ",F);

Fattoriale con il while /* Calcolo del fattoriale di un numero N */ void main() { int F, N, I; F=1; /* inizializzazione del fattoriale*/ I=0; /* inizializzazione del contatore*/ printf( Dammi N: ); scanf("%d",&n); while (I < N) {I = I+1; F = I*F; printf( Il fattoriale e %d, F);

Soluzione: main() { int N,I,J; printf( dammi N: ); scanf("%d",&n); I=1; while ( I<=N ) { /* corpo ciclo esterno */ printf( Prossimo valore: ); printf("%d",i); J=1; while (J<I) { /* corpo ciclo interno */ printf("%d",i); J=J+1; I=I+1;