Confronto di 2 aree di rettangoli con dichiarazione delle variabili in c.
A parte il fatto che il codice non è ottimizzato, non funziona correttamente e non capisco il perchè!?
codice:
#include <iostream>using namespace std;


void main()
{
short int a1=0;
short int b1=0;
short int a2=0;
short int b2=0;
short int area1=0;
short int area2=0;
short int temp1;
short int temp2;
cout<<"Inserisci l'altezza del primo triangolo"<<endl;
cin>>a1;
cout<<"Inserisci la base del primo triangolo"<<endl;
cin>>b1;
cout<<"Inserisci l'altezza del secondo triangolo"<<endl;
cin>>a2;
cout<<"Inserisci la base del secondo triangolo"<<endl;
cin>>b2;




_asm
{
    MOV AX,a1
    MUL AX;b1
    MOV BX;2
    DIV AX;BX
    MOV area1;AX


    MOV AX,a2
    MUL AX;b2
    MOV BX;2
    DIV AX;BX
    MOV area2;AX


    MOV AX;area1
    MOV BX;area2
    CMP AX;BX


            JE UGUALI
}


cout<<"Le due aree non sono uguali"<<endl;
_asm
{
SALTA
}


UGUALI:
cout<<"Le due aree sono uguali"<<endl;


    SALTA:
system("pause");
}