Matcos: matematica
Ing. Ivano Coccorullo
Matcos 3.4
“Matematica e Computer
con Matcos 3.4”
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Assegnazione valori”
<identificatore> = LeggiNum;
<identificatore> = LeggiNum(<stringa>);
a = LeggiNum;
a1 = LeggiNum(“paga settimanale”); Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Stampare i valori”
Stampa(a);
Stampa(“il valore è “, a);
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Primo programma”
a = Legginum(“caramelle”);
a1 = Legginum(“biscotti”);
Stampa(“le caramelle sono ”,a,”i biscotti sono“,a1);
“spazio” è un trucco per staccare nella stampa i valori
di a e a1.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Stampa i valori”
Se invece vuoi far visualizzare un numero nella finestra
grafica, il comando da dare è
Scrivi(n);
oppure
Scrivi(“il valore è “, n);
poi occorre spostarsi con il mouse nella posizione in cui
vuoi far comparire il numero e cliccare per confermare la
posizione.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Stringhe… frasi”
E’ possibile inserire nella memoria del computer anche un testo,
il comando necessario è
Testo = LeggiStr;
e successivamente, per visualizzarlo, aggiungere
Stampa(testo);
oppure
Scrivi(testo);
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Scrivere nella finestra grafica la seguente frase:
La matematica è difficile
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Operazioni con i numeri:
somma e prodotto”
a = Legginum(“primo numero”);
a1 = Legginum(“secondo numero”);
s = a+a1;
p = a*a1;
Stampa(“La somma è ”,s, ”il prodotto è ”,p );
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Scrivi un programma che calcoli l’area di un quadrato
di lato assegnato.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Scrivi un programma che calcoli la somma e il
prodotto di tre numeri naturali consecutivi. Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“La sottrazione tra numeri naturali”
La sottrazione nei numeri naturali sappiamo che non è
sempre definita; occorre infatti che il minuendo sia
maggiore del sottraendo. Istruzione condizionale
Se <espressione logica>
Allora
<istruzione 1>
Altrimenti <istruzione 2>
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“La sottrazione”
a = LeggiNum(“minuendo”);
b = LeggiNum(“sottraendo”);
Se (a>b) Allora Esegui;
s = a-b;
Stampa(“la differenza è “,s);
Fine;
Altrimenti
Stampa(“la sottrazione non si può fare”); Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Operatori Booleani”
E
Rende vera l’espressione logica se sono veri entrambi gli operandi;
altrimenti la rende falsa.
Es. (6>5) E (6>7) = falso; (1=1) E (3>2) = vero.
O
Basta che sia vero un solo operando per rendere vera l’espressione
logica; se sono entrambi falsi la rende falsa.
Es. (6>5) O (6>7) = vero; (1=0) O (3<2) = falso
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Scrivi un programma che verifichi la proprietà
associativa e commutativa della somma. Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
via
a,b,c di N
“Possibile algoritmo”
p = a+b
q = p+c
p1 = b+c
q1 = a+p1
q=q1
?
no
si
vale propr. ass.
non vale propr. ass.
p2=b+a
p =p2 ?
si
vale propr. comm.
no
non vale propr.
comm.
Fine
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Possibile codifica”
a = Legginum;
b = .............
c = .............
p = a+b;
q = .............
p1 = .............
q1 = .............
se (q = q1) Allora
..................
altrimenti
.................
p2 = ................
se ........ Allora
..................
..................
..................
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“La divisione”
Dati 2 numeri a e b con b≠0 e a>b esistono e sono unici due altri numeri q ed r con 0≤r<b tali
che: a = b * q + r
Per ottenere il numero q, ossia il quoziente intero, Matcos mette a disposizione l’operatore DIV
così il comando
q = a DIV b;
calcola il quoziente intero tra a e b, qualora esista. Per ottenere il resto, r:
RDIV
così il comando
q = a DIV b
r = a RDIV b;
calcola il resto della divisione tra a e b.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Scrivere un programma, che dati due numeri naturali,
calcola ove esistano, il quoziente intero e il resto della
divisione del primo per il secondo.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Risoluzione esercizio”
a = Legginum(“dividendo”);
b = Legginum(“divisore”);
Se (a>b) E (b>0) Allora Esegui;
q = a DIV b;
r = a RDIV b;
Stampa(“il quoziente è ”,q,” il resto è “,r);
Fine;
altrimenti Esegui;
Stampa(“divisione non possibile“);
Fine; Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Ricordando che un numero a è multiplo di un numero
b se e solo se il resto della divisione a : b è zero, scrivi
un programma che dati due numeri diversi da zero,
verifichi se uno è multiplo dell’altro.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
via
“Possibile algoritmo”
a, b
no
a<b ?
si
c a;
a b; b
c
R=resto di (a:b)
R=0 ?
no
a non è multiplo di b
si
a è multiplo di b
fine
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Possibile codifica”
a = Legginum(“primo numero”);
b = .............
se (....) allora esegui;
c = a;
a = b;
b = c;
r=a div b;
Fine;
altrimenti
r = .............
Se (......) allora
Stampa(“il numero“,a,” è multiplo del numero ”,b);
altrimenti
Stampa(“il numero “,a,”...............”,b);
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Ricorda che un numero è pari se il resto della
divisione per 2 è zero. Scrivi un programma che
introdotto un numero stabilisca se è pari o dispari.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“La Potenza”
La potenza an con a e n non entrambi nulli si può
ottenere in Matcos con l’operatore “ ^ “ . Così il
comando
q=2^3
calcola il valore 23.
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Esercizio”
Scriviamo un programma Matcos che dati a e n calcoli
la potenza an .
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Possibile codifica”
a = Legginum(“base”);
n = Legginum(“esponente”);
Se (a = 0) E (n = 0 ) allora
Stampa (“la potenza non è definita”);
altrimenti esegui;
se (n = 0) E (a< >0) allora
Stampa(“la potenza vale 1 “);
altrimenti esegui;
q = a^n;
Stampa(“Il valore di è ”, q);
fine;
fine;
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Operazioni aritmentiche”
Matcos consente di calcolare qualsiasi espressione aritmetica
contenente le operazioni finora introdotte, anche con l’uso delle
parentesi.
La precedenza delle operazioni è la stessa di quella delle
convenzioni dell’aritmetica, l’unica eccezione è che in Matcos si
fa uso solo di parentesi tonde e non anche di quadre e graffe.
#(3+ 4 × 5)2 − 2% + 7 ×15 − 4 × 2 × 2 +1
$
&
{
}
Matcos: Matematica
Prof. Ivano Coccorullo
Matcos 3.4
“Possibile codifica”
a = (((3+4*5)^2-2)+7*15-4*2)*2+1;
Stampa(“Il valore è ”,a);
Matcos: Matematica
Prof. Ivano Coccorullo