summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSanto Cariotti <sancn@live.com>2017-01-11 18:38:15 +0100
committerSanto Cariotti <sancn@live.com>2017-01-11 18:38:15 +0100
commit97708b347f181ec632ba0b2b0f2f30e97fe5a0e0 (patch)
tree6b786bf228a5e8b3547a64e79fe72900dbf7158c
parent6b2b12eb72a47133770531c05bb3d1b569d91591 (diff)
esericizi novembre e 11/1/17
-rw-r--r--scontrino_fiscale.cc57
-rw-r--r--val_studenti.cc47
-rw-r--r--vettpari.cc52
3 files changed, 156 insertions, 0 deletions
diff --git a/scontrino_fiscale.cc b/scontrino_fiscale.cc
new file mode 100644
index 0000000..ee71a40
--- /dev/null
+++ b/scontrino_fiscale.cc
@@ -0,0 +1,57 @@
+//determinare dati da input il prezzo dei prodotti lo scontrino totale ed applicare lo sconto del 10% fino a due prodotti, lo sconto del 20% fino a 4
+//lo sconto del 30% fino a 6, oltre i 6 il 35%. stampare il totale da pagare.
+#include <iostream>
+#include <string.h>
+
+using namespace std;
+
+int main()
+{
+ int prodotti = 0, sconto;
+ float totale = 0, prezzo;
+ char cn = 'S';
+ string oggetto;
+
+ do
+ {
+ prodotti++;
+ cout << "Prodotto numero " << prodotti << ": ";
+ getline(cin,oggetto);
+ cin.clear();
+ while (cin.get() != '\n')
+ {
+ continue;
+ }
+
+ cout << "Prezzo: ";
+ cin >> prezzo;
+
+ totale += prezzo;
+
+ cout << "Continuare? S = Si / N = No : ";
+ cin >> cn;
+ }while(cn == 'S' || cn == 's');
+
+ switch(prodotti)
+ {
+ case 1:
+ case 2:
+ sconto = 10;
+ break;
+ case 3:
+ case 4:
+ sconto = 20;
+ break;
+ case 5:
+ case 6:
+ sconto = 30;
+ break;
+ default:
+ sconto = 35;
+ }
+
+ totale = totale - (totale * sconto / 100);
+
+ cout << "Il totale e': " << totale << endl;
+ return 0;
+}
diff --git a/val_studenti.cc b/val_studenti.cc
new file mode 100644
index 0000000..6e4d02f
--- /dev/null
+++ b/val_studenti.cc
@@ -0,0 +1,47 @@
+//visualizzare la media e i voti positivi di n materie di n studenti
+//usato il compilatore GNU GCC
+
+#include <iostream>
+#include <string>
+
+using namespace std;
+
+int main()
+{
+ int studenti, somma = 0, materie, positivi, i = 0, j;
+ float media, voto;
+ string nome;
+
+ cout << "Quanti studenti? ";
+ cin >> studenti;
+
+
+ cout << "Quante materie? ";
+ cin >> materie;
+ cout << "\n";
+
+ do {
+ positivi = 0;
+ media = 0;
+ j = 0;
+ somma = 0;
+ cout << "Nome: ";
+ cin >> nome;
+
+ do {
+ cout << "Inserisci voto: ";
+ cin >> voto;
+
+ if (voto >= 6) positivi++;
+
+ somma += voto;
+ j++;
+ } while(j < materie);
+
+ media = (float) somma / (float) materie;
+ cout << "La media dei voti dell'alunno " << nome << " e': " << media << ". Considerando " << positivi << " voti positivi.\n" << endl;
+ i++;
+ } while(i < studenti);
+
+ return 0;
+}
diff --git a/vettpari.cc b/vettpari.cc
new file mode 100644
index 0000000..e82cf23
--- /dev/null
+++ b/vettpari.cc
@@ -0,0 +1,52 @@
+/* realizzare un programma in grado di caricare un vettore di dimensione 10
+con dei numeri interi divisibili per il numero 2
+utilizzato compilatore GCC 5.0.2 */
+#include <iostream>
+
+using namespace std;
+
+bool pari(int n);
+
+int main(int argc, char *argv[])
+{
+ int N, num, i, totale = 0;
+ while(true)
+ {
+ cout << "Inserisci lunghezza vettore: ";
+ cin >> N;
+ if(N < 1)
+ cout << "Lunghezza vettore con consentita." << endl;
+ else
+ break;
+ }
+
+ int vett[N];
+
+ for(i = 0; i < N; i++)
+ {
+ while(true)
+ {
+ cout << "Inserisci un numero pari: ";
+ cin >> num;
+ if(pari(num) == true){
+ vett[i] = num;
+ break;
+ }else cout << "Non hai inserito un numero pari, riprova!" << endl;
+ }
+ totale += num;
+ }
+
+ cout << "----------" << endl;
+ for(i = 0; i < N; i++) cout << "vett[" << i << "] = " << vett[i] << endl;
+ cout << "----------" << endl;
+ cout << "La somma dei valori dell'array e': " << totale << endl;
+ cout << "----------" << endl;
+ cout << "La media dei valori dell'array e': " << totale / N << endl;
+
+ return 0;
+}
+
+bool pari(int n)
+{
+ return ((n % 2) == 0) ? true : false;
+}