Esercizi Ciclo FOR
/* Esercizi di base in C++ sul Ciclo FOR */
1. Plot del Coseno
// Esercizi in C++: Dati un numero Rmax di righe e Cmax di colonne, stampare a video l’andamento della funzione y = cos(x) + 1. /******************************/
#include <iostream>
#include <math.h>
using namespace std;
#define pi 3.14
#define Rmax 60
#define Cmax 60
int main() {
float x;
float y;
int n = 3;
for (int i=0; i<Rmax; i++) {
for (int j=0; j<n*Cmax; j++) {
x = (j*2*pi)/Cmax;
y = cos(x) + 1;
// cout<< y;
float t = (y/2)*Cmax;
if(i<=t && i+1>t)
cout<< "*";
else
{
cout<< ".";
}
}
cout<< "\n";
}
}
}
2. Elevamento a Potenza: l’utente inserisce base ed esponente, l’algoritmo restituisce la potenza del numero.
// Esercizi in C++: Elevamento a potenza mediante utilizzo del Ciclo FOR.
/******************************/
#include <iostream>
#include <math.h>
using namespace std;
int main() {
double base, esp, pot;
int ii;
cout<<"inserisci base "<<endl;
cin>>base;
cout<<"inserisci esponente "<<endl;
cin>>esp;
pot=1;
for(ii=1; ii<=esp; ii++){
pot = pot*base;
}
cout<<pot;
}
3. Somma di n numeri: l’utente inserisce tutti i numeri, il programma ne restituisce la somma (inserendo il numero zero si esce dall’inserimento e il programma termina)
/* Programma che legge n numeri e li somma (inserendo
il numero 0 il programma termina la somma) */
#include <iostream>
using namespace std;
int main(){
int num, n, somma=0;
cout<<"inserisci il numero di elementi da sommare"<<endl;
cin>>n;
for (int x=1; x<=n; x++){
cout<<"Inserire il "<<x<<"o numero: ";
cin>>num;
if (num==0){
x=n;
}
else{
somma+=num;
}
}
cout<<"La somma dei numeri inseriti è: "<<somma<<"\n";
}
4. Nella disintegrazione atomica dei materiali radioattivi la massa perduta nel periodo di un anno è data dal prodotto della massa residua per una costante di decadimento caratteristica del tipo di materiale. Svolgere gli esercizi utilizzando il Ciclo FOR.
- Progettare un algoritmo che calcoli, a partire dai valori della massa iniziale espressa in grammi, della costante di decadimento e del numero di anni trascorsi, la massa residua di materiale.
- Modificare l’algoritmo precedente in modo che, a partire dalla massa iniziale espressa in grammi e dalla costante di decadimento, determini il numero di anni necessario prima che la massa residua di materiale sia inferiore a 1g.
//Decadimento - Risposta 1
#include <iostream>
using namespace std;
int main(){
float k, m1, m2;
int na, ii;
cout<<"inserisci la massa inziale in grammi"<<endl;
cin>>m1;
cout<<"inserisci la costante di decadimento del materiale (k maggiore di uno)"<<endl;
cin>>k;
cout<<"inserisci numero anni"<<endl;
cin>>na;
m2 = m1;
for (ii=1; ii<=na; ii++){
m2 = m2/k;
}
cout<<"La massa residua e': "<<m2<<"g";
}
//Decadimento - Risposta 2
#include <iostream>
using namespace std;
int main(){
float k, m1, m2;
int na, ii;
cout<<"inserisci la massa iniziale in grammi"<<endl;
cin>>m1;
cout<<"inserisci la costante di decadimento (k maggiore di uno)"<<endl;
cin>>k;
na = 0;
m2 = m1;
while(m2>=1){
m2 = m2/k;
na = na+1;
}
cout<<"dopo" <<na<<" anni, la massa residua e': "<<m2;
}
// Esercizi testati con Dev-C++ in Ambiente Windows e con Code::Blocks in ambiente Linux (Ubuntu)
