mercoledì 21 aprile 2010

C++ - Fibonacci

// Rocco Meli, 12.04.2010
// Sequenza di Fibonacci

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

#include <ctime>

unsigned long sequenzafib (unsigned long); // Prototipo di funzione

int main()
{
// Dichiarazione variabili locali
int scelta;
int numerivis1;
int numerovis2;
int for1;
unsigned int tempo;
clock_t inizio;
clock_t fine;
std::cout << "SEQUENZA DI FIBONACCI" << endl;
std::cout << "[1] Visualizza la sequenza fino all'ennesimo numero" << std::endl;
std::cout << "[2] Visulizza l'ennesimo numero" << std::endl;
std::cin >> scelta;
switch (scelta) 
{
case (1):
std::cout << "Quanti numeri vuoi visualizzare?" << std::endl;
std::cin >> numerivis1;
for (for1 = 0; for1 <= numerivis1; for1++) 
{
inizio = clock();
std::cout << "Fibonacci(" << for1 << ") = " << sequenzafib(for1) << endl;
fine = clock();
tempo = fine - inizio;
std::cout << tempo << " ticks" << std::endl;
}
break;
case (2):
std::cout << "Quale numero vuoi visualizzare?" << std::endl;
std::cin >> numerovis2;
std::cout << "Fibonacci(" << numerovis2 << ") = " << sequenzafib(numerovis2) << endl;
break;
default:
break;
}
return 0;
}



// Funzione Fibonacci
unsigned long sequenzafib (unsigned long numerofib)
{
if ((numerofib == 0) or (numerofib == 1))
{
return numerofib;
}
else
{
return sequenzafib(numerofib - 1) + sequenzafib(numerofib - 2);
}
}

C++ - Cerchio/Sfera

// Rocco Meli, 05.04.2010
// Cerchio/Sfera

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

#include <cmath>

int main()
{
long double raggio;
long double circonferenza;
long double area;
long double superficie;
long double volume;

std::cout << "Inserisci il raggio: ";
std::cin >> raggio;
std::cout << std::endl;

circonferenza = 2 * raggio * M_PI;
area = M_PI * pow(raggio, 2);
superficie = 4 * M_PI * pow(raggio, 2);
volume = (double) 4/3 * M_PI * pow(raggio, 2);
std::cout << "Circonferenza cherchio di raggio " << raggio << " : " << circonferenza << std::endl;
std::cout << "Area cherchio di raggio " << raggio << " : " << area << std::endl;
std::cout << "Superficie sfera di raggio " << raggio << " : " << superficie << std::endl;
std::cout << "Volume sfera di raggio " << raggio << " : " << volume << std::endl;
return 0;
}

venerdì 16 aprile 2010

C++ - Maggiore

// Rocco Meli, 16.064.2010
// Maggiore tra n numeri

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

int main()
{
// Dichiarazione variabili
int numeri;
int for1;
long double maggiore;
long double numero;
std::cout << "MAGGIORE" << std::endl;
std::cout << std::endl;
std::cout << "Quanti numeri vuoi inserire? ";
std::cin >> numeri;
std::cout << std::endl;
if (numeri <= 0
{
std::cout << "Non ci sono numeri" << std::endl;
}
else if (numeri == 1)
{
std::cout << "Inserire numero: ";
std::cin >> numero;
std::cout << std::endl;
maggiore = numero;
std::cout << "Il numero maggiore é " << maggiore << std::endl;
}
else // Numeri > 1
{
std::cout << "Inserire numero: ";
std::cin >> numero;
std::cout << std::endl;
maggiore = numero;
for (for1 = 1; for1 < numeri; for1++)
{
std::cout << "Inserire numero: ";
std::cin >> numero;
std::cout << std::endl;
if (numero > maggiore) 
{
maggiore = numero;
}
}
std::cout << "Il numero maggiore é " << maggiore << std::endl;
}
return 0;
}

mercoledì 14 aprile 2010

C++ - Note GS (Conteggio Voti)

// Rocco Meli, 25.03.2010
// Programma per i conteggio di promossi/bocciati
#include <iostream>
using std::cout;
using std::cin;
using std::endl;

// Definizione variabili
int partecipanti;
int nota; // Nota (1 bocciato, 2 passato, 3 e 4 raccomandato)
int passatinr; // Passati non raccomandati
int passatir; // Passati raccomandati
int passatitot; // Passati totali
int bocciati; // Bocciati
int for1; // Controllo for

int main ()
{
std::cout << "" << endl;
std::cout << "NOTE GS" << endl;
std::cout << "" << endl;
// Inizializzazione variabili
passatinr = 0;
passatir = 0;
passatitot = 0;
bocciati = 0;
for1 = 1;
std::cout << "Numero di parteipanti: " << endl;
std::cin >> partecipanti;
for (for1 = 1; for1 <= partecipanti; for1++) // Ripete per ogni partecipante
{
std::cout << "Inserisci nota (da 1 a 4): " << endl;
std::cin >> nota;
if (nota == 2
{
passatinr += 1;
}
else if (nota == 3)
{
passatir += 1;
}
else if (nota == 1
{
bocciati += 1;
}
else if (nota == 4)
{
passatir += 1;
}
else 
{
std::cout << "Nota non valida!" << endl;
for1 -= 1;
}
}
passatitot = passatir + passatinr;
std::cout << "Passati con raccomandazione: " << passatir << endl;
std::cout << "Passati senza raccomandazione: " << passatinr << endl;
std::cout << "Passati totali: " << passatitot << endl;
std::cout << "Bocciati: " << bocciati << endl;
std::cout << "Partecipenti totali: " << partecipanti << endl;
return 0;
}

C++ - Fattoriale II

// Rocco Meli, 14.04.2010
// Calcolo del fattoriale

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

int main()
{
// Dichiarazione variabili
int fattori;
int for1;
unsigned long fattoriale;
// Inizializzazione variabili
fattoriale = 1;
std::cout << "Di che numero vuoi calcolare il fattoriale? ";
std::cin >> fattori;
for (for1 = fattori; for1 >= 1; for1--) // Fattoriale
{
fattoriale *= for1;
}
std::cout << fattori << "! = " << fattoriale << endl;
return 0;
}

C++ - Fattoriale

// Rocco Meli, 14.04.2010
// Calcolo del fattoriale

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

unsigned long fattoriale(unsigned long); // Prototipo di funzione

int main()
{
// Dichiarazione variabili
int fattori;
int for1;
// Inizializzazione variabili
for1 = 0;

std::cout << "Di che numero vuoi calcolare il fattoriale? ";
std::cin >> fattori;
for (for1 = 0; for1 <= fattori; for1++)
{
std::cout << for1 << "! = " << fattoriale(for1) << endl;
}
return 0;
}

// Definizione funzione fattoriale
unsigned long fattoriale(unsigned long n)
{
if (n <= 1) // Caso base (1!=0!=1)
{
return 1;
}
else  // Ricorsione
{
return n * fattoriale (n - 1);
}
}

sabato 10 aprile 2010

C++ - Calcolatrice I

//Calcolatrice (addizione, sottrazione, moltiplicazione, elevazione)
//Rocco Meli, 08.04.2010

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

// Dichiarazione variabili
int scelta;
long double numero1;
long double numero2;
long double somma;
long double sottrazione;
long double moltiplicazione;
long double quadrato;
long double cubo;

int main()
{
std::cout << "-:[CALCOLATRICE C++]:-" << std::endl; // Visualizza il nome
std::cout << "[1] Addizione" << std::endl;
std::cout << "[2] Sottrazione" << std::endl;
std::cout << "[3] Moltiplicazione" << std::endl;
std::cout << "[4] Elevazione al quadrato" << std::endl;
std::cout << "[5] Elevazione al cubo" << std::endl;
std::cin >> scelta;
switch (scelta) 
{
case (1): // Addizione
std::cout << "Inserire due numeri: " << std::endl;
std::cin >> numero1 >> numero2; // Assegna i valori immessi alle variabili
somma = numero1 + numero2;
std::cout << "La somma é " << somma << std::endl;
break;
case (2): // Sottrazione
std::cout << "Inserire il primo numero: " << std::endl;
std::cin >> numero1; // Assegna il valore immesso alla variabile
std::cout << "Inserire il secondo numero: " << std::endl;
std::cin >> numero2; // Assegna il valore immesso alla variabile
sottrazione = numero1 - numero2;
std::cout << "Il risultato é " << sottrazione << std::endl;
break;
case (3): // Moltiplicazione
std::cout << "Inserire due numeri: " << std::endl;
std::cin >> numero1 >> numero2; // Assegna i valori immessi alle variabili
moltiplicazione = numero1 * numero2;
std::cout << "Il risultato é " << moltiplicazione << std::endl;
break;
case (4): // Elevazione al quadrato
std::cout << "Inserire un numero: " << std::endl;
std::cin >> numero1; // Assegna i valori immessi alle variabili
cubo = numero1 * numero1;
std::cout << "Il risultato é " << moltiplicazione << std::endl;
break;
case (5): // Elevazione al cubo
std::cout << "Inserire un numero: " << std::endl;
std::cin >> numero1; // Assegna i valori immessi alle variabili
cubo = numero1 * numero1 * numero1;
std::cout << "Il risultato é " << cubo << std::endl;
break;
// Ignora gli a capo, le tabulazioni e gli spazi
case '\n':
case '\t':
case ' ':
break;
default: // Per tutto il resto
std::cout << "Non hai scelto un operazione!" << std::endl;
break;
}
return 0;
}

venerdì 9 aprile 2010

C++ - Relazioni tra i numeri

// Rocco Meli, 06.04.2010
// Determinare le relazioni tra due numeri

#include <iostream>
using std::cout;
using std::cin;
using std::endl;

// Definizione variabili globali
int numero1;
int numero2;

int main()
{
std::cout << "Inserire due numeri da comparare: " << std::endl;
std::cin >> numero1 >> numero2;
if (numero1 == numero2
{
std::cout << numero1 << " é uguale a " << numero2 << std::endl;
}
if (numero1 != numero2
{
std::cout << numero1 << " non é uguale a " << numero2 << std::endl;
}
if (numero1 > numero2
{
std::cout << numero1 << " é  maggiore di " << numero2 << std::endl;
}
if (numero1 >= numero2
{
std::cout << numero1 << " é  maggiore o uguale a " << numero2 << std::endl;
}
if (numero1 < numero2
{
std::cout << numero1 << " é  minore di " << numero2 << std::endl;
}
if (numero1 <= numero2
{
std::cout << numero1 << " é  minore o uguale a " << numero2 << std::endl;
}
return 0;
}

lunedì 5 aprile 2010

C++ - Somma

Un semplicissimo programma che somma due numeri interi inseriti dall'utente e stampa il risultato.



// Rocco Meli, 04.04.2010
// Somma di due numeri interi

#include<iostream>
using std::cout;
using std::cin;
using std::endl;

// Dichiarazione delle variabili
int numero1;
int numero2;
int somma;

int main()
{
std::cout << "SOMMA DI DUE NUMERI INTERI";
std::cout << "Inserire primo numero: ";
std::cin >> numero1; // Associa il primo numero immesso alla variabile 1

std::cout << "Inserire secondo numero: ";
std::cin >> numero2; // Associa il secondo numero immesso alla variabile 2

somma = numero1 + numero2; // Effettua la somma

std::cout << "La somma é " << somma << endl; // Stampa la somma

return 0;
}

C++ - Hello, world!

// Rocco Meli
// Hello World

#include <iostream> // Include la libreria standard I/O
using std::cout;
using std::endl;

int main()
{
std::cout << "Hello, world!" << std::endl; // Visualizza la scritta e va a capo
return 0; // Restituisce il valore 0 se l'esecuzione é corretta
}