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

    Programma con matrici [turbo pascal]

    Salve a tutti...come esercizio per casa la prof c ha assegnato un programma da fare in turbo pascal ma dopo svariati tentativi anche con l'aiuto di alcuni miei amici + bravi non c siamo riusciti (le matrici ce le ha spiegate da poco)..
    La traccia è la seguente:

    Caricare una matrice quadrata di dimensione 6 di nomi di animali, stampare solo l'ultima colonna e ricercare un animale scelto dall'utente

    Ho provato nel seguente modo ma m da alcuni errori che non riesco a capire...



    Program relazione;
    uses crt;
    const
    r=6;
    c=6;
    mat=array[1..r,1..c]of string[25];
    var
    a:mat;
    scelta:integer;
    procedure carica(var a1:mat);
    var
    i,j:integer;
    begin
    for i:=1 to 6 do
    begin
    for j:=1 to 6 do
    begin
    readln(a1[i,j]);
    end;
    end;
    end;
    var
    x:string[25];
    procedure animale (var a1:mat);
    begin
    writeln('inserisci l''elemento');
    readln(x);
    for r=1 to 6 do
    begin
    for c=1 to 6 do
    begin
    if a1[r,c]=x then
    writeln('l''animale esiste');
    else
    writeln('l''animale non esiste');
    end;
    end;
    end;
    Procedure stampa(var a1:mat);
    var
    i,j:integer;
    begin
    for i:=1 to 4 do
    begin
    for j:=1 to 4 do
    begin
    if i=6 then
    writeln('a1[i,j]');
    end;
    end;
    end;
    Procedure Menu;

    begin
    writeln('1:carica');
    writeln('2:carica');
    writeln('3:stampa');
    writeln('4:fine');
    end;
    begin{main}
    repeat
    writeln('menu');
    readln(scelta);
    case scelta of
    1:carica(a);
    2:ricerca(a);
    3:stampa(a);
    end;
    until scelta=4;
    readln;
    end.

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    usa i tag code per inserire il codice (è più facile per noi seguirti).
    Poi usare l'italiano non è male (è fastidioso leggere abbreviativi in un contesto in cui scrivere con abbreviativi non porta nessun vantaggio), ma questa è una mia fissa.

    Infine, cosa più importante, che errore hai? Mi dà errore dice tutto e niente, abbinare alla tua affermazione l'errore, la sua descrizione, aiuta noi ad aiutarti
    RTFM Read That F*** Manual!!!

  3. #3
    ok scusami...ora riposto il codice:

    codice:
    Program relazione;
     type
         mat=array[1..6,1..6]of string;
     var 
       a:mat;  
      scelta:integer; 
    procedure carica(var a1:mat);
     var 
       i,j:integer;
     begin 
        for i:=1 to 6 do  
                     begin 
                         for j:=1 to 6 do  
                                       begin 
                                          readln(a1[i,j]); 
                                        end;        
               end;
     end; 
    Procedure Ricerca(a1:mat);
     var   
     animale:string;  
      b:boolean;
        i,j:integer;
     begin   
      b:=false; 
        readln(animale);
         while i <= 4 and b=false do
                                begin  
                                 while j <= 4 do   
                                           begin  
                                               if a1[i,j]=animale then
                
                                                        b:=true;
                                              end; 
                               end;  
       if b = true then   
                   writeln('animale trovato')   
                                          else 
                     writeln('animale non trovato');
     end;
     Procedure stampa(var a1:mat);
     var    
    i,j:integer;
     begin    
     for i:=1 to 4 do 
                      begin  
                        for j:=1 to 4 do   
                                     begin
                                           if i=6 then 
                                                   writeln('a1[i,j]'); 
                                       end;  
                     end;
     end; 
    Procedure Menu; 
     begin
        writeln('1:carica');
        writeln('2:carica'); 
       writeln('3:stampa'); 
       writeln('4:fine'); 
    end; 
    begin{main}  
        repeat 
           writeln('menu'); 
             readln(scelta); 
             case scelta of   
                       1:carica(a); 
                         2:ricerca(a);  
                        3:stampa(a);  
            end;   
       until scelta=4;
     readln;
     end.


    Gli errori sono:
    27 / 22 untitl~3.pas
    Error: Incompatible types: got "BOOLEAN" expected "LONGINT"


    74 untitl~3.pas
    Fatal: There were 1 errors compiling module, stopping


    E scusa ancora per prima =)

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    tranquillo, sono piccole regole che facilitano l'uso dello strumento

    Allora
    27 / 22 untitl~3.pas
    Error: Incompatible types: got "BOOLEAN" expected "LONGINT"

    al posto di un longint passa un booleano, controlla alla riga evidenziata cosa fai

    Correggi prima questo, l'altro errore dipende da questo
    RTFM Read That F*** Manual!!!

  5. #5
    Originariamente inviato da valia
    tranquillo, sono piccole regole che facilitano l'uso dello strumento

    Allora
    27 / 22 untitl~3.pas
    Error: Incompatible types: got "BOOLEAN" expected "LONGINT"

    al posto di un longint passa un booleano, controlla alla riga evidenziata cosa fai

    Correggi prima questo, l'altro errore dipende da questo

    Ma come si corregge quell'errore? scusa l'incomprensione...

  6. #6
    trovato grazie 1000

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Prego, anche se hai fatto tutto tu
    RTFM Read That F*** Manual!!!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.