Exercice 1:
Le problème consiste à créer une fonction, qui compterait le TTC ( prix tout taxe compris ) à partir des variables qu’on obtient de l’utilisateur et lui renvoyer le résultat.
Le script :
function calcul2()
TVA=0.196;
HT=input("Entrez le prix hors taxe");
c=HT+HT*TVA;
disp("Le prix TTC vaut: ")
disp(c)
endfunction
L’exécution:
octave-3.0.1.exe:49> calcul2
Entrez le prix hors taxe120
Le prix TTC vaut:
143.52
Exercice 2:
Le problème consiste à créer une fonction, qui compterait le TTC à partir d’un argument introduit, de façon, qu’on peut afficher une variable au résultat.
function c=calcul1(HT)
TVA=0.196
c=HT+HT*TVA
octave-3.0.1.exe:35> TTC=calcul1(120)
TVA = 0.19600
c = 143.52
TTC = 143.52
Exercice 3:
a) le taux de la TVA va être introduit comme un pourcentage:
function c=calcul3(HT,TVA);
TVA1=TVA/100;
c=HT+HT*TVA1;
octave-3.0.1.exe:25> c=calcul3(120,19.6)
b) le taux de la TVA va être définit par défaut dans le script:
function c=calcul4(HT,TVA=19.6);
octave-3.0.1.exe:9> c=calcul4(120)
octave-3.0.1.exe:10> c=calcul4(120,20)
c = 144
c) on calcule encore le montant de TVA (variable d):
function [d,c]=calcul5(HT,TVA=19.6);
d= HT*TVA1;
c=HT+d;
octave-3.0.1.exe:14> [k,l]=calcul5(120)
k = 23.520
l = 143.52
Exercice 4:
Le problème consiste à créer une fonction, qui compterait le TTC à partir d’un argument contenu dans une matrice.
· D’abord, on défini le matrice m1 avec les données qu’on va ensuite utiliser, alors le mois et le prix HT.
m1=[1:2:23;120,102.4,101.8,104.2,108.45,107.79,111.39,115.8,135.85,138.2,145.49,150.49]'
octave-3.0.1.exe:50> m1
m1 =
1.0000 120.0000
3.0000 102.4000
5.0000 101.8000
7.0000 104.2000
9.0000 108.4500
11.0000 107.7900
13.0000 111.3900
15.0000 115.8000
17.0000 135.8500
19.0000 138.2000
21.0000 145.4900
23.0000 150.4900
· Ensuite, on crée un function tabl, qui va calculer le montant de TVA et le prix TTC et les renvoyer comme des colonnes suivantes d’une nouvelle matrice. Les deux variables ce sont le tableau (m1) et le TVA. On utilise encore une function calcul5 du point c d’exercice précédent.
function tabl2(m,taux)
[k,l]=calcul5(m(:,2),taux);
tabl2=[m,k,l]
octave-3.0.1.exe:10> tabl2(m1,19.6)
tabl2 =
1.0000 120.0000 23.5200 143.5200
3.0000 102.4000 20.0704 122.4704
5.0000 101.8000 19.9528 121.7528
7.0000 104.2000 20.4232 124.6232
9.0000 108.4500 21.2562 129.7062
11.0000 107.7900 21.1268 128.9168
13.0000 111.3900 21.8324 133.2224
15.0000 115.8000 22.6968 138.4968
17.0000 135.8500 26.6266 162.4766
19.0000 138.2000 27.0872 165.2872
21.0000 145.4900 28.5160 174.0060
23.0000 150.4900 29.4960 179.9860
Exercice 5:
Le problème consiste à créer une fonction, qui compterait le prix de vente à partir des deux arguments matriciels – tableau des prix de vente et tableau des marges.
· On definit les deux matrices à une colonne (vecteurs), m2 avec les marges et m3 avec les prix HT seuls.
m2=[23,23,35,35,33,33,33,33,33,30,22,22]'
et
m3=[120,102.4,101.8,104.2,108.45,107.79,111.39,115.8,135.85,138.2,145.49,150.49]'
· Maintenant on crée une function qui nous renverra le prix de vente à partir de ces deux vecteurs
function [c,d]=calcul6(HT,marge);
marge1=marge/100;
d=HT.*marge1;
c=HT.+d;
octave-3.0.1.exe:14> pdv = calcul6(m3,m2)
pdv =
147.60
125.95
137.43
140.67
144.24
143.36
148.15
154.01
180.68
179.66
177.50
183.60
Exercice 6:
Le problème consiste à créer une fonction, qui renverrait le tableau contenant le mois, le prix d’achat, le prix de vente et le prix tous taxe compris à partir d’une matrice à 3 colonnes – mois, prix d’achat et la marge. Le taux TVA et traité comme un argument.
· On definit la matrice à 3 colonnes m4 :
m4=[1:2:23;120,102.4,101.8,104.2,108.45,107.79,111.39,115.8,135.85,138.2,145.49,150.49;23,23,35,35,33,33,33,33,33,30,22,22]’
· Et on crée la function:
function tabl3(m,taux)
[k,l]=calcul6(m(:,2),m(:,3));
[d,c]=calcul5(k,taux);
tabl3=[m(:,1),m(:,2),k,c]
La deuxième ligne utilise la fonction d’exercice précédent pour augmenter le prix HT par la marge, et puis, dans la troisième ligne, on en augmente encore par le taux TVA à l’aide d’une function d’exercice 3c. On affiche seulement les variables qui nous interessent, alors on n’affiche pas les montant qui sont calculés par ces deux functions (variables l et d).
octave-3.0.1.exe:9> tabl3(m4,19.6)
tabl3 =
1.0000 120.0000 147.6000 176.5296
3.0000 102.4000 125.9520 150.6386
5.0000 101.8000 137.4300 164.3663
7.0000 104.2000 140.6700 168.2413
9.0000 108.4500 144.2385 172.5092
11.0000 107.7900 143.3607 171.4594
13.0000 111.3900 148.1487 177.1858
15.0000 115.8000 154.0140 184.2007
17.0000 135.8500 180.6805 216.0939
19.0000 138.2000 179.6600 214.8734
21.0000 145.4900 177.4978 212.2874
23.0000 150.4900 183.5978 219.5830
Exercice 7:
Le problème consiste à créer les graphes basées sur les matrices à quatres colonnes obtenues dans les exercices 4 et 6.
· On definit les matrices à 4 colonnes mtabl2 d’exercice 4 et mtabl3 d’exercice 6 :
mtabl3 = [ ...
1.0000 120.0000 147.6000 176.5296 ; ...
3.0000 102.4000 125.9520 150.6386 ; ...
5.0000 101.8000 137.4300 164.3663 ; ...
7.0000 104.2000 140.6700 168.2413 ; ...
9.0000 108.4500 144.2385 172.5092 ; ...
11.0000 107.7900 143.3607 171.4594 ; ...
13.0000 111.3900 148.1487 177.1858 ; ...
15.0000 115.8000 154.0140 184.2007 ; ...
17.0000 135.8500 180.6805 216.0939 ; ...
19.0000 138.2000 179.6600 214.8734 ; ...
21.0000 145.4900 177.4978 212.2874 ; ...
23.0000 150.4900 183.5978 219.5830 ]
mtabl2 = [ ...
1.0000 120.0000 23.5200 143.5200 ; ...
3.0000 102.4000 20.0704 122.4704 ; ...
5.0000 101.8000 19.9528 121.7528 ; ...
7.0000 104.2000 20.4232 124.6232 ; ...
9.0000 108.4500 21.2562 129.7062 ; ...
11.0000 107.7900 21.1268 128.9168 ; ...
13.0000 111.3900 21.8324 133.2224 ; ...
15.0000 115.8000 22.6968 138.4968 ; ...
17.0000 135.8500 26.6266 162.4766 ; ...
19.0000 138.2000 27.0872 165.2872 ; ...
21.0000 145.4900 28.5160 174.0060 ; ...
23.0000 150.4900 29.4960 179.9860 ]
· Ensuite, on definie une fonction qui desinnerait un graphe à partir de ces tableaux.
function draw1(m, axex, axey, nom1, nom2, nom3)
plot(m(:,1),m(:,2),[".-r;",nom1,";"],m(:,1),m(:,3),["+-b;",nom2,";"],m(:,1),m(:,4),["s-c;",nom3,";"])
xlabel(axex);
ylabel(axey);
octave-3.0.1.exe:25> draw1(mtabl2,"mois","prix","achat","montant de TVA","vente”)
octave-3.0.1.exe:23> draw1(mtabl3,"mois","prix","achat","vente","TTC")
Santaradesu