Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [Pascal]confronto fra due algoritmi

    ciao ragazzi...

    dovendo risolvere un problema che mi hanno dato, ho fatto due algoritmi che dovrebbero dare il risultato richiesto...
    il problema è che uno mi da un risultato e uno un altro...
    ora vorrei sapere lo svolgimento giusto fra questi due source...

    Testo Problema:

    Dati in input una serie di dati (Codice articolo, quantità in giacenza, prezzo acquisto e prezzo vendita), si vuole sapere il valore (quantità * prezzo acquisto) per tutti gli articoli inseriti.

    Sorgente Programma 1

    codice:
    program prova;
    uses crt;
    var cont, n : integer;
        codice : string[20];
        quantita, prezzo_a, prezzo_v, valore, valmag, valmin : real;
    
    begin
       clrscr;
       cont:=0;
       writeln('N: ');
       readln(n);
       while cont<n do
          begin
             writeln('Codice: ');
             readln(codice);
             writeln('Quantità: ');
             readln(quantita);
             writeln('Prezzo_A: ');
             readln(prezzo_a);
             writeln('Prezzo_V: ');
             readln(prezzo_v);
             valore:=quantita*prezzo_a;
             if quantita>5
                then
                   begin
                      valmag:=valmag+valore;
                   end
                else
                   if quantita<=5
                      then
                         begin
                            valmin:=valmin+valore;
                         end;
             cont:=cont+1;
          end;
       writeln('Valore quantità > 5: ' ,valmag:5:2);
       writeln('Valore quantità < = 5: ' ,valmin:5:2);
       readln;
    end.
    oppure,

    Sorgente Programma 2

    codice:
    program prova;
    uses crt;
    var cont, n : integer;
        codice : string[20];
        quantita, prezzo_a, prezzo_v, totale, totale2, totale3, totale4, totale5, totale6 : real;
    
    begin
       clrscr;
       cont:=0;
       writeln('N: ');
       readln(n);
       while cont<n do
          begin
             writeln('Codice: ');
             readln(codice);
             writeln('Quantità: ');
             readln(quantita);
             writeln('Prezzo_A: ');
             readln(prezzo_a);
             writeln('Prezzo_V: ');
             readln(prezzo_v);
             if quantita>5
                then
                   begin
                      totale:=totale+quantita;
                      totale2:=totale2+prezzo_a;
                      totale3:=totale*totale2;
                   end
                else
                   if quantita<=5
                      then
                         begin
                            totale4:=totale4+quantita;
                            totale5:=totale5+prezzo_a;
                            totale6:=totale4*totale5;
                         end;
             cont:=cont+1;
          end;
       writeln('Valore quantità > 5: ' ,totale3:5:2);
       writeln('Valore quantità < = 5: ' ,totale6:5:2);
       readln;
    end.
    il primo come si vede prima trova il risultato del valore per ogni articolo, e poi somma tutti i risultati;
    il secondo prima somma la quantità e il prezzo di acquisto per ogni articolo, e poi moltiplica i risultati per trovare il valore...

    grazie...

    ciao!!
    bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla

    Salento 12 !! Ultras Lecce !!

  2. #2

    Re: [Pascal]confronto fra due algoritmi

    Originariamente inviato da tiratardi
    ciao ragazzi...

    dovendo risolvere un problema che mi hanno dato, ho fatto due algoritmi che dovrebbero dare il risultato richiesto...
    il problema è che uno mi da un risultato e uno un altro...
    ora vorrei sapere lo svolgimento giusto fra questi due source...

    Testo Problema:

    Dati in input una serie di dati (Codice articolo, quantità in giacenza, prezzo acquisto e prezzo vendita), si vuole sapere il valore (quantità * prezzo acquisto) per tutti gli articoli inseriti.

    Sorgente Programma 1

    codice:
    program prova;
    uses crt;
    var cont, n : integer;
        codice : string[20];
        quantita, prezzo_a, prezzo_v, valore, valmag, valmin : real;
    
    begin
       clrscr;
       cont:=0;
       writeln('N: ');
       readln(n);
       while cont<n do
          begin
             writeln('Codice: ');
             readln(codice);
             writeln('Quantità: ');
             readln(quantita);
             writeln('Prezzo_A: ');
             readln(prezzo_a);
             writeln('Prezzo_V: ');
             readln(prezzo_v);
             valore:=quantita*prezzo_a;
             if quantita>5
                then
                   begin
                      valmag:=valmag+valore;
                   end
                else
                   if quantita<=5
                      then
                         begin
                            valmin:=valmin+valore;
                         end;
             cont:=cont+1;
          end;
       writeln('Valore quantità > 5: ' ,valmag:5:2);
       writeln('Valore quantità < = 5: ' ,valmin:5:2);
       readln;
    end.
    oppure,

    Sorgente Programma 2

    codice:
    program prova;
    uses crt;
    var cont, n : integer;
        codice : string[20];
        quantita, prezzo_a, prezzo_v, totale, totale2, totale3, totale4, totale5, totale6 : real;
    
    begin
       clrscr;
       cont:=0;
       writeln('N: ');
       readln(n);
       while cont<n do
          begin
             writeln('Codice: ');
             readln(codice);
             writeln('Quantità: ');
             readln(quantita);
             writeln('Prezzo_A: ');
             readln(prezzo_a);
             writeln('Prezzo_V: ');
             readln(prezzo_v);
             if quantita>5
                then
                   begin
                      totale:=totale+quantita;
                      totale2:=totale2+prezzo_a;
                      totale3:=totale*totale2;
                   end
                else
                   if quantita<=5
                      then
                         begin
                            totale4:=totale4+quantita;
                            totale5:=totale5+prezzo_a;
                            totale6:=totale4*totale5;
                         end;
             cont:=cont+1;
          end;
       writeln('Valore quantità > 5: ' ,totale3:5:2);
       writeln('Valore quantità < = 5: ' ,totale6:5:2);
       readln;
    end.
    il primo come si vede prima trova il risultato del valore per ogni articolo, e poi somma tutti i risultati;
    il secondo prima somma la quantità e il prezzo di acquisto per ogni articolo, e poi moltiplica i risultati per trovare il valore...

    grazie...

    ciao!!
    problema risolto...c'è stata una mia svista nel fare l'algoritmo...

    grazie ciao
    bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla

    Salento 12 !! Ultras Lecce !!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.