dunque ho iniziato a fare questo diagramma di flusso del seguente programma:

codice:
Program DivisoriPrimi;

Uses Crt;

Var a:integer; (* primo numero *)
    b:integer; (* secondo numero *)
    tmp:integer; (* variabile che conterrà l'i-esimo divisore *)
    min: integer; (* il minimo fra a e b *)
    max: integer; (* il massimo fra a e b *)
    trovato: boolean; (* flag: true se esiste un divisore comune *)

Begin
   clrscr;
   Write('Introdurre primo valore: ');
   Readln(a);
   Write('Introdurre secondo valore: ');
   Readln(b);
   If (a<b) Then
    Begin
      min := a;
      max := b;
    End
   Else
    Begin
      min := b;
      max := a;
    End;

   trovato := false;
   tmp := min;
   While (Not(Trovato) And (tmp > 1)) do
   Begin
      If (((min mod tmp) = 0) and ((max mod tmp) = 0)) Then
         trovato := true
      Else
         tmp := tmp - 1;
   End;

   If (trovato) Then
      Writeln('I due numeri non sono primi tra di loro: ',tmp,' li divide!')
   Else
      Writeln('I due numeri sono primi tra di loro!');
   
End.
:quote: :quote:

sono però bloccato..vi allego il file da modificare (*.ppt).

Non riesco a sistemare il while con l'if e a finire.

Grazie x l'aiuto

DOWNLOAD ME