Codice dei programmi nella directory:
///File: ES1A.c
#include <stdio.h>
#include <stdlib.h>
//ES 1A GILL
/**Creare un programma in C che, dati due interi che rappresentano rispettivamente il tasso di
propagazione di un virus (quante nuove persone ogni giorno si ammalano per ogni persona già
ammalata) e la quantità di persone di una popolazione, dica quanti giorni sono necessari perché
sia ammalata almeno la metà della popolazione considerando che all’inizio ci sia una sola
persona ammalata.**/
int main()
{
int tasso_propagazione = 0;
int popolazione = 0;
int giorni = 0;
int gentemalata = 1;
printf("Inserisci tasso di propagazione = ");
scanf("%d",&tasso_propagazione);
printf("Inserisci popolazione totale = ");
scanf("%d",&popolazione);
while (gentemalata < popolazione/2)
{
giorni++;
gentemalata = gentemalata + tasso_propagazione * gentemalata;
}
printf("sono necessari %d giorni per far ammalare piu' di meta' della popolazione\n",giorni);
return 0;
}
///(Fine file: ES1A.c)
///File: es2a.c
/*Far inserire una serie numerica di interi fermandosi quando la somma di due numeri consecutivi
è pari a 10. Visualizzare quanti numeri erano stati inseriti.*/
//Giona Magnani
#include <stdio.h>
int main ()
{
int cont, num1, num2;
cont = 1;
printf("inserisci una serie di numeri\n");
scanf("%d", &num1);
do
{
num2 = num1;
scanf("%d", &num1);
printf("somma=%d\n", num2 + num1);
cont++;
}
while(num1 + num2 != 10);
printf("ha inserito %d numeri", cont);
return 0;
}
///(Fine file: es2a.c)
///File: Es2B.c
/*
Leggere una serie di numeri interi passati dall’utente, fermandosi al primo numero
che rende la serie non crescente e restituendo quanti numeri erano stati inseriti.
*/
#include <stdio.h>
int main()
{
int num, num2, quanti=1;
printf("Inserisci il primo numero-->");
scanf("%d",&num);
do {
num=num2;
printf("Inserisci un numero -->");
scanf("%d",&num2);
//printf("N=%d,N2=%d\n",num,num2);
quanti++;
}while(num2>num);
printf("Sono stati inseriti %d numeri",quanti);
return 0;
}
///(Fine file: Es2B.c)
///File: Es3a.c
/*Scrivi un programma in C che inserite base e esponente calcoli la potenza di un numero senza
utilizzare la funzione pow() disponibile in C.*/
// di Gangi
#include<stdio.h> //
int main(){
int base, esponente;
int contatore = 1;
printf ("Base:"); scanf ("%d",&base);
printf ("Esponente:"); scanf ("%d",&esponente);
int risultato = 1;
while (contatore <= esponente) {
contatore++;
risultato = risultato * base;
};
printf ("Il risultato e'%d",risultato);
return 0;
}
///(Fine file: Es3a.c)
///File: Es4B.c
/*ESERCIZIO 4 (Punti 2,5)
Realizzare un programma in C che, dato un numero in input, stampi a video tutti i suoi divisori
tranne 1 e se stesso.
Es. n=12 → 2, 3, 4, 6 */
// Magnani Giona
#include <stdio.h>
int main()
{
int numero, divisore=1, primo=1; // divisori=0; primo lo uso come booleano, 1==0, 0==falso
printf("inserisci un numero ed il programma restituira' i suoi divisori: ");
scanf("%d", &numero);
while(divisore <= numero / 2 )
{
divisore++;
if(numero % divisore == 0)
{
printf("%d, ", divisore);
primo=0;
}
}
if(primo == 1)
printf("il numero non ha divisori");
}
///(Fine file: Es4B.c)
///File: ES5B.c
/**ESERCIZIO 5 (Punti 3)
Realizzare un programma che permetta all'utente di inserire un numero. Se è un quadrato
perfetto visualizzare la radice quadrata (ad esempio 1, 4, 9, 16, 25, 36, 49 …. sono quadrati
perfetti)
NB. Non è consentita nessuna funzione predefinita di C**/
#include <stdio.h> // Talukdar
int main ()
{
int num, quadrato_perfetto=0, cont = 0; // quadrato_perfetto boolean
printf("Inserire un numero : ");
scanf("%d",&num);
do
{
if (cont * cont == num){
quadrato_perfetto = 1;
printf ("la radice e'%d\n",cont);
}
cont++;
}
while (cont<=num/2);
if (quadrato_perfetto==1 )
printf ("Il numero che hai inserito e' un quadrato perfetto");
else
printf ("Il numero che hai inserito non e' un quadrato perfetto");
return 0;
}
///(Fine file: ES5B.c)