Soluzioni esercizi del preappello sulle funzioni

Soluzioni esercizi del preappello sulle funzioni
1. Scrivere una
function
risult = maggiore1(n1, n2)
che, ricevuti due numeri n1 e n2 in ingresso, li confronti e restituisca al programma chiamante:
1
se n1 è maggiore di n2
0
altrimenti.
function
risult = maggiore1(n1, n2)
if (n1 > n2)
risult = 1;
else
risult = 0;
end
end
Scrivere inoltre un programma che chieda di inserire due numeri in input e chiami la funzione
definita sopra per determinare se il primo è maggiore del secondo, stampando un messaggio che
descrive il risultato (Es. “Il primo è più grande” o “Il secondo è più grande”).
num1 = input (“Inserisci il primo numero”);
num2 = input (“Inserisci il secondo numero”);
r = maggiore1 (num1, num2)
if (r == 1)
disp (“Il primo è più grande”);
else
disp (“Il secondo è più grande”);
end
2. Scrivere una
function
ris = maggiore2(nx1, nx2)
che, ricevuti due numeri nx1 e nx2 in ingresso, li confronti e restituisca al programma
chiamante:
1
se nx1 è minore di nx2
0
altrimenti.
function
ris = maggiore2(nx1, nx2)
if (nx1 < nx2)
ris = 1;
else
ris = 0;
end
end
Scrivere inoltre un programma che chieda di inserire due numeri in input e chiami la funzione
definita sopra per determinare se il primo è maggiore del secondo, stampando un messaggio che
descrive il risultato (Es. “Il primo è più grande” o “Il secondo è più grande”).
num1 = input (“Inserisci il primo numero”);
num2 = input (“Inserisci il secondo numero”);
r = maggiore2 (num1, num2)
if (r == 0)
disp (“Il primo è più grande”);
else
disp (“Il secondo è più grande”);
end
3. Scrivere una
function
rsl = minore1(t1, t2)
che, ricevuti due numeri t1 e t2 in ingresso, li confronti e restituisca al programma chiamante:
1
se t1 è minore di t2
0
altrimenti.
function
rs1 = minore1(t1, t2)
if (t1 < t2)
rs1 = 1;
else
rs1 = 0;
end
end
Scrivere inoltre un programma che chieda di inserire due numeri in input e chiami la funzione
definita sopra per determinare se il primo è maggiore del secondo, stampando un messaggio che
descrive il risultato (Es. “Il primo è più grande” o “Il secondo è più grande”).
num1 = input (“Inserisci il primo numero”);
num2 = input (“Inserisci il secondo numero”);
r = minore1 (num1, num2)
if (r == 0)
disp (“Il primo è più grande”);
else
disp (“Il secondo è più grande”);
end
4. Scrivere una
function
rs = minore2(w1, w2)
che, ricevuti due numeri w1 e w2 in ingresso, li confronti e restituisca al programma chiamante:
1
se w2 è minore di w1
0
altrimenti.
function
rs = minore2(w1, w2)
if (w2 < w1)
rs = 1;
else
rs = 0;
end
end
Scrivere inoltre un programma che chieda di inserire due numeri in input e chiami la funzione
definita sopra per determinare se il primo è maggiore del secondo, stampando un messaggio che
descrive il risultato (Es. “Il primo è più grande” o “Il secondo è più grande”).
num1 = input (“Inserisci il primo numero”);
num2 = input (“Inserisci il secondo numero”);
r = minore2 (num1, num2)
if (r == 1)
disp (“Il primo è più grande”);
else
disp (“Il secondo è più grande”);
end
Esercizi
1. Scrivere una
function
[mind, n] =
conta (vet1, vet2)
che riceva in ingresso i vettori vet1 e vet2 e ne trovi le dimensioni.
La funzione deve restituire la dimensione mind del vettore più corto e,
nella variabile n, quanti, fra i primi mind elementi del primo vettore,
sono minori dei corrispondenti elementi del secondo.
Scrivere inoltre un programma che, dopo avere richiesto due vettori in
ingresso da tastiera determini, utilizzando la funzione, quale sia la
dimensione d del vettore più piccolo e quanti, dei primi d elementi del
secondo vettore, siano più grandi dei corrispondenti elementi del primo.