Advertisement
fcamuso

Corso Recupero - 6 Selezione / esercizi B

Jun 28th, 2021
1,446
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 7.92 KB | None | 0 0
  1. //QUESTA PAGINA CONTIENE PIÙ SORGENTI
  2.  
  3. /* Inseriti tre numeri interi A, B e C dire se C è appartiene all'intervallo [A,B].
  4. Esempio se A=12, B=40 e C=34 dovremmo controllare se il 34 è tra il 12 (compreso)
  5. ed il 40 (compreso) rispondendo ovviamente sì. */
  6.  
  7. #include <iostream>
  8.  
  9. using namespace std;
  10.  
  11. int main()
  12. {
  13.     int a=0, b=0, c=0;
  14.     cout << "Inserire tre numeri interi separati da spazio ";
  15.     cin >> a >> b >> c;
  16.  
  17.     if (a>b)   //12  13  14 15 16 17 18 19 20          18
  18.     {
  19.       cout << "Questi numeri non definiscono un intervallo (ordine invertito per errore?\n";
  20.     }
  21.     else
  22.       if (c>=a)
  23.       {
  24.         if (c<=b)
  25.         {
  26.           cout << "Il terzo numero appartiene all'intervallo definito dai primi due\n";
  27.         }
  28.         else
  29.         {
  30.           cout << "Il terzo numero NON  appartiene all'intervallo definito dai primi due\n\n";
  31.         }
  32.       }
  33.       else
  34.       {
  35.         cout << "Il terzo numero NON  appartiene all'intervallo definito dai primi due\n\n";
  36.       }
  37.  
  38.  
  39.     return 0;
  40. }
  41.  
  42.  
  43. //----------------------------------------------------------------------------------------------------
  44.  
  45. /*
  46. Chiedere l’inserimento di tre numeri interi A, B e C.
  47. Calcolare la loro media aritmetica semplice.
  48. Dire se almeno uno dei tre numeri è uguale a tale media.
  49. */
  50.  
  51.  
  52. #include <iostream>
  53.  
  54. using namespace std;
  55.  
  56. int main()
  57. {
  58.  
  59.  
  60.     int n1=0, n2=0, n3=0;
  61.  
  62.     //input dei dati - UNICA LETTURA
  63.     //suggerimento: provare con 3 4 5
  64.     cout << "Inserire tre numeri interi separati da spazio: ";
  65.     cin >> n1 >> n2 >> n3;
  66.  
  67.     //ELABORAZIONE
  68.  
  69.     double media = (n1+n2+n3)/3.0; //NB: forzo calcolo con reali
  70.  
  71.     cout << "Media: " << media << endl;
  72.  
  73.  
  74.     if (n1==media)
  75.     {
  76.       cout << "Verificato con il primo numero inserito\n";
  77.     }
  78.     else
  79.     {
  80.       if (n2==media)
  81.       {
  82.         cout << "Verificato con il secondo numero inserito\n";
  83.       }
  84.       else
  85.       {
  86.         if (n3==media)
  87.         {
  88.           cout << "Verificato con il terzo numero inserito\n";
  89.         }
  90.         else
  91.         {
  92.           cout <<"Nessuno dei tre numeri e' uguale alla loro media\n";
  93.         }
  94.       }
  95.     }
  96.  
  97.     return 0;
  98. }
  99.  
  100. //----------------------------------------------------------------------------------
  101.  
  102.  
  103. /*
  104. Fatti inserire due numeri scambiare i valori delle variabili
  105. usate per la lettura (come se il  primo numero fosse stato
  106. inserito per secondo e viceversa). Nota: lo scambio deve essere
  107. effettuato solo se i due numeri NON sono uguali.
  108. */
  109. #include <iostream>
  110.  
  111. using namespace std;
  112.  
  113. int main()
  114. {
  115.   double n1=0, n2=0, temp=0;
  116.  
  117.   if(n1!=n2)
  118.   {
  119.     temp = n1;
  120.     n1=n2;
  121.     n2=temp;
  122.   }
  123.  
  124.     return 0;
  125. }
  126.  
  127. //-------------------------------------------------------------------------------------
  128.  
  129. /*
  130. Chiedi l’inserimento da tastiera di due valori; il primo rappresenta
  131. una cifra di denaro in dollari, il secondo il tasso di conversione
  132. da dollari a euro (ad esempio se il tasso fosse 2 significherebbe
  133. che 1 euro = 2 dollari). Visualizzare a quanti euro corrisponde la cifra in dollari.
  134. Controllare che non possano essere inseriti fattori di cambio minori di 0.5
  135.  
  136. */
  137.  
  138. #include <iostream>
  139.  
  140. using namespace std;
  141.  
  142. int main()
  143. {
  144.   //DICHIARAZIONE DELLE VARIABILI NECESSARIE
  145.   double cifra_dollari = 0;
  146.   double tasso_conversione = 0;
  147.   double cifra_euro_equivalente =0; //non strettamente necessaria
  148.  
  149.   //INPUT
  150.   cout << "Cifra in dollari da convertire in euro: ";
  151.   cin >> cifra_dollari;
  152.  
  153.   if (cifra_dollari<0)
  154.   {
  155.     cout << "Non posso convertire una cifra negativa\n";
  156.   }
  157.   else
  158.   {
  159.     cout << "Tasso di conversione (almeno 0.5): ";
  160.     cin >> tasso_conversione;
  161.  
  162.     if (tasso_conversione<0.5)
  163.     {
  164.       cout << "Tasso di conversione troppo piccolo (almeno 0.5)";
  165.     }
  166.     else
  167.     {
  168.       //ELABORAZIONE
  169.       cifra_euro_equivalente = cifra_dollari / tasso_conversione;
  170.  
  171.       //OUTPUT
  172.       cout << cifra_dollari << " dollari corrispondono con questo tasso a "
  173.            << cifra_euro_equivalente << " euro\n";
  174.     }
  175.   }
  176.     return 0;
  177. }
  178.  
  179. //----------------------------------------------------------------------------
  180.  
  181. /*
  182. CALCOLO AREA TRIANGOLO CON FORMULA DI ERONE
  183. È molto ingegnosa e permette di calcolare l'area con le
  184. misure dei tre lati. Cercala su Internet e mettila in
  185. pratica. Nota: il calcolo della radice quadrata
  186. si ottiene con la funzione sqrt(numero);
  187. per usare sqrt devi aggiungere #include <cmath>.
  188.  
  189. Controllare che i lati inseriti siano >0
  190.  
  191. */
  192.  
  193. #include <iostream>
  194. #include <cmath>
  195.  
  196. using namespace std;
  197.  
  198. int main()
  199. {
  200.   //DICHIARAZIONE DELLE VARIABILI NECESSARIE
  201.  
  202.   //dichiarazione multipla, comoda :)
  203.   double lato_a = 0, lato_b=0, lato_c=0;
  204.   double area = 0; //non strettamente necessaria
  205.  
  206.  
  207.   //INPUT
  208.   cout << "Lato a del triangolo: ";
  209.   cin >> lato_a;
  210.  
  211.   if (lato_a<=0)
  212.   {
  213.     cout << "Primo lato non valido\n";
  214.   }
  215.   else
  216.   {
  217.     cout << "Lato b del triangolo: ";
  218.     cin >> lato_b;
  219.  
  220.     if (lato_b<=0)
  221.     {
  222.       cout << "Secondo lato non valido\n";
  223.     }
  224.     else
  225.     {
  226.  
  227.       cout << "Lato c del triangolo: ";
  228.       cin >> lato_c;
  229.  
  230.       if (lato_c<=0)
  231.       {
  232.          cout << "Terzo lato non valido\n";
  233.       }
  234.       else
  235.       {
  236.         //formula
  237.         //indichiamo con sp il semiperimetro cioè la metà del perimetro (somma dei tre lati)
  238.         //e i tre lati con a,b,c
  239.         //area = radice_quadrata di sp * (sp-a) * (sp-b) * (sp-c)
  240.  
  241.         //ELABORAZIONE
  242.         double sp = (lato_a + lato_b + lato_c)/2; //semiperimetro
  243.         area = sqrt(sp * (sp-lato_a) * (sp-lato_b) * (sp-lato_c));
  244.  
  245.         //OUTPUT
  246.         cout << "Area: " << area << endl;
  247.       }
  248.     }
  249.   }
  250.     return 0;
  251. }
  252.  
  253.  
  254.  
  255.  
  256. //-------------------------------------------------------------------------
  257.  
  258. /*
  259. SOLUZIONE EQUAZIONE DI PRIMO GRADO
  260. ax+b=0
  261. Deve essere calcolato il valore della x fatti inserire gli altri elementi dell'equazione.
  262. Sentitevi liberi di andare a documentarvi sulle equazioni di primo grado su Internet.
  263.  
  264. Nota: c`è un caso che porta a una impossibilità di completare il calcolo (il programma
  265. andrebbe addirittura in crash!); Sarai capace di intercettarlo e gestirlo con un controllo?
  266.  
  267. */
  268. #include <iostream>
  269.  
  270. using namespace std;
  271.  
  272. int main()
  273. {
  274.   //DICHIARAZIONE DELLE VARIABILI NECESSARIE
  275.  
  276.   double a = 0, b=0;
  277.   double x = 0; //non strettamente necessaria
  278.  
  279.  
  280.   //INPUT
  281.   cout << "ax+b=0, inserire coefficiente a: ";
  282.   cin >> a;
  283.  
  284.   if (a==0)
  285.   {
  286.     cout << "Impossibile\n";
  287.   }
  288.   else
  289.   {
  290.     cout << a << "x+b=0, inserire termine noto b: ";
  291.     cin >> b;
  292.  
  293.  
  294.     //ELABORAZIONE
  295.     x = -b/a;
  296.  
  297.     //OUTPUT
  298.     cout << a << "x+" << b <<"=0, la x vale: " << x << endl;
  299.   }
  300.     return 0;
  301. }
  302.  
  303.  
  304. //---------------------------------------------------------------------------
  305.  
  306. /*
  307. Inseriti da tastiera due operandi chiedere quale operazione
  308. si vuole fare con essi e visualizzare risultato. Nota: limitarsi
  309. alle quattro operazioni aritmetiche fondamentali (+, -, * e /).
  310. Nel caso della divisione state attenti ai crash!
  311. */
  312. #include <iostream>
  313.  
  314. using namespace std;
  315.  
  316. int main()
  317. {
  318.   double op1=0, op2=0;
  319.   char operazione=' ';
  320.  
  321.   cout << "Operando 1: ";
  322.   cin >> op1;
  323.  
  324.   cout << "Operando 2: ";
  325.   cin >> op1;
  326.  
  327.   cout << "Operazione: (+, -, * e /)";
  328.   cin >> operazione;
  329.  
  330.   if (operazione=='+')
  331.   {
  332.     cout << "Somma: " << op1+op2;
  333.   }
  334.   else
  335.   {
  336.     if (operazione=='-')
  337.     {
  338.       cout << "Sottrazione: " << op1-op2;
  339.     }
  340.     else
  341.     {
  342.       if (operazione=='*')
  343.       {
  344.         cout << "Prodotto: " << op1*op2;
  345.       }
  346.       else
  347.       {
  348.         if (operazione=='/')
  349.         {
  350.           if (op2==0)
  351.           {
  352.             cout << "Impossibile dividere per zero\n";
  353.           }
  354.           else
  355.           {
  356.             cout << "Divisione: " << op1/op2;
  357.           }
  358.         }
  359.         else
  360.         {
  361.           cout << "Operazione non riconosciuta\n";
  362.         }
  363.       }
  364.     }
  365.   }
  366.     return 0;
  367. }
  368.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement