edutecnica

Esercizio 3        

Dati tre numeri interi, inseriti da tastiera, restituirli, indicando il minimo, il massimo ed il medio.

Passiamo a dichiarare tre variabili intere: a, b e c ed altre tre variabili min, max e med che saranno restituite in uscita.
Un primo costrutto if stabilisce il massimo ed il minimo tra a e b )in pratica chi il maggiore tra (a) e (b) poi bisogna verificare il medio, e a questo punto si potrebbe far uso di un costrutto if-else-if.
Nel primo test, se c>max viene posto med=max mentre il nuovo max (c) ed il programma ha le tre variabili max, min e med assegnate (il programma le stampa e termina).
Se non viene verificato il primo test si passa al secondo c<min : se questo viene verificato viene assegnato med=min, mentre il nuovo min diventa (c) (il programma stampa e termina).
Nel caso le due condizioni precedenti non siano verificate max e min restano invariati ed il valore medio risulta essere (c).
Scrivendo l'algoritmo in linguaggio C++ sarebbe:

#include<iostream>
using namespace std;
main(){
int a,b,c,max,min,med;
cout<<"ins.num:";cin>>a;//input
cout<<"ins.num:";cin>>b;
cout<<"ins.num:";cin>>c;
//algoritmo
if(a>b){max=a;min=b;}
else {max=b;min=a;}

if(c>max){med=max;max=c;}
else if(c<min){med=min;min=c;}
else {med=c;}
//output
cout<<max<<" "<<med<<" "<<min<<"\n";

}//fine main

Lo stesso algoritmo in linguaggio Java si mantiene praticamente invariato.

import java.util.Scanner;
class minmaxmed{
public static void main (String args[]){
Scanner in=new Scanner(System.in);
int a,b,c,max,min,med;
//input
System.out.print("ins.num:");a=in.nextInt();
System.out.print("ins.num:");b=in.nextInt();
System.out.print("ins.num:");c=in.nextInt();
//algoritmo
if(a>b){max=a;min=b;}
else {max=b;min=a;}

if(c>max){med=max;max=c;}
else if(c<min){med=min;min=c;}
else {med=c;}
//output
System.out.println("max:"+max+" med:"+med+" min:"+min);
}//fine main
}// fine classe minmaxmed

La stessa versione funzionante in HTML/Js, evidenzia come le sole cose che cambiano sono le istruzioni per l'input/output.


<!DOCTYPE html>
<html>
<body>
<input type="number" id="A" size="2" />:A
<input type="number" id="B" size="2" />:B
<input type="number" id="C" size="2" />:C<br><br>
<input type="button" id="ok" value="ok" />
<p id="OT"></p>
<script>
ok.addEventListener("click",function(){
var max,min,med;
var a=parseFloat(A.value);
var b=parseFloat(B.value);
var c=parseFloat(C.value);
if(a>b){max=a;min=b;}
else {max=b;min=a;}
if(c>max){med=max;max=c;}
else if(c<min){med=min;min=c;}
else {med=c;}
OT.innerHTML="max:"+max+" med:"+med+" min:"+min;
});
</script>
</body>
</html>


: A

: B

: C