Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - aiuto in pascal e programmazione generale
Forum - Pascal - aiuto in pascal e programmazione generale

Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedì, 01/01/1970
salve, vorrei chiedervi un po di cose sul pascal (di cui ho una conoscenza media/bassa) e un po di cosa sulla programmazione in generale.
partiamo dalle domande sul pascal:
premetto che di questo linguaggio di programmazione so usare le variabili integer, real, char, string ma non boolean!poi ho imparato anche le strutture di controllo while do, if the else, case of e repeat until, ho imparato a operare sui file txt, qualche volta ho anche utilizzato la libreria dos...(ovviamente tutto in linea di comando)
quello che vorrei chiedervi oltre a come si utilizzano le boolean, magari con un esempio pratico, vorrei sapere è qual'è la differenza tra procedure e funzioni dato che queste ultime non le ho capite e infine gli array! bhè questi sono la mia bestia nera e vi chiedo gentilmente se potreste spiegarmeli nel modo più semplice, ho cercato informazioni su internet ma nnt...
-------------------------------------------
per quanto riguarda la programmazione in generale vorrei sapere se con le conoscenze acquisite con pascal potrei passare al c e poi al c++, oppure è meglio imparare la programmazione ad oggetti in pascal?
inoltre con pascal sono riuscito a creare solo programmi per utilità didattica e scientifica, e ho creato un generatore di codici, vorrei sapere i linguaggi c e c++ per cosa sono indicati, e anche se passando a questi due sarà anche più facile creare applicazioni con form (praticamente se la sintassi è più povera e quindi più sbrigativo).
infine sono indeciso se dopo aver imparato questi 3 linguaggi di programmazione devo fermarmi oppure imparare qualche altro??
grazie mille in anticipo scusate per la lunghezza ma era da molto che volevo trogliermi questi dubbi.

Ultima modifica effettuata da il 30/01/2014 alle 7:21
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:27
Giovedì, 30/01/2014
Questa non è una domanda da forum ma una richiesta di farti un corso di programmazione online.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
Bonny (Member)
Expert


Messaggi: 437
Iscritto: 24/04/2009

Segnala al moderatore
Postato alle 10:33
Giovedì, 30/01/2014
Ciao Alexx99,
Prima di tutto premetto che io non conosco Pascal ma le domende che hai fatto sono riconducibili a qualsiasi linguaggio.

Che cos'è e a cosa servono le variabili boolean?
Le variabili boolean possono contenere solo due valori TRUE o FALSE, e nessun altro tipo di dato (es un carattere, intero, float ecc..).
Ovvero servono per contenere dei valori di condizione. (poi ci ritorniamo con un esempio completo).

Differenza tra procedura e funzione?
Una procedura è  nient'altro che una funzione che quando invocata non ritorna "nessun" valore, a differenza di una funzione che ritorna un valore, esempio:

1) Vogliamo creare una funzione che accetta come parametri due interi ed effettua la somma dei due e ritorna il risultato.
Codice sorgente - presumibilmente Pascal

  1. Function Sum(A, B : integer) : integer;
  2. Begin
  3.     Sum := (A + B)
  4. End.
  5.  
  6. var c:integer;
  7. c := Sum(4, 6);
  8.  
  9. writeln(c); //output "10"



2) Vogliamo creare una procedura che accetta come parametro due interi e ne scambia il valore.
Codice sorgente - presumibilmente Delphi

  1. Procedure Swap(var A,B : integer);
  2. var appoggio : integer;
  3. Begin
  4.     appoggio:=B;
  5.     B:=A;
  6.     A:=appoggio
  7. End;
  8.  
  9. var c, b :integer;
  10. c := 4;
  11. d := 6;
  12.  
  13. Swap(c, d);
  14. //ora c contiene 6 e d contiene 4



Che cosa sono gli array?
Un array è una collezione di elementi, cioè un insieme di elementi "dello stesso tipo" tutti messi in fila indiana :=), immagina una fila di mattoncini tutti messi in fila, il mattoncino rappresenta una cella di memoria dove poter mettere un valore (per semplicità intero), ogni cella ha un numero che la identifica chiamato indice, per esempio se abbiamo un array di 4 elementi interi, avremo a disposizione 4 celle di memoria numerate da 0 a 3
Es: array = [0] - [1] - [2] - [3];
Quindi potremmo decidere di memorizzare nell'array l'insieme dei numeri 20, 34 ,16, 9 :
array[0] = 20;
array[1] = 34;
array[2] = 16;
array[3] = 9;

è come avere quattro variabili intere fuse in un unica variabile chiamata array ...

Per riprendere le variabili boolean voglio farti un esempio mettendo insieme anche gli array.

3) Creare una funzione che dato un array di N elementi verificare se almeno un elemento contiene il valore x:

Codice sorgente - presumibilmente Delphi

  1. Function Trova(v: array of integer, x:integer)
  2.   var
  3.      trovato:boolean,
  4.      i:integer;
  5. begin
  6.  
  7.      trovato:=false;
  8.      i:=Low(v) //parti dal primo elemento dell'array
  9.      
  10.      //scorri tutte le celle fino all'ultima E fino a quando trovato è false
  11.      while(i < High(v) and not trovato) do
  12.        begin
  13.            if(v[I] == x)
  14.               trovato:=true;
  15.            else
  16.               I:= I + 1;
  17.        end
  18.  
  19.        Trova:= trovato;
  20. end;
  21.  
  22. var v [6,8,1,3,22] of integer;
  23. var x = 1;
  24.  
  25. var risultato:boolean;
  26.  
  27. risultato:= Trova(v , x);
  28.  
  29. if(risultato == true)
  30.    writeln("Trovato!!");
  31. else
  32.    writeln("Non trovato!!");



Perchè ho usato una variabile boolean??
Perchè l'obbiettivo era di trovare almeno un elemento pari ad x, quindi, guardando l'esempio precedente il valore 1 si trova in posizione 2, segue che non avrebbe senso controllare anche le posizioni 3 e 4.

Spero di esserti stato d'aiuto.. per le domande sul c++, un consiglio che ti posso dare è di non avere fretta!! Impara bene ad usare variabili e costrutti della programmazione (funzioni, procedure, array, if anidati ecc) poi inizia a studiare la programmazione object oriented e qualche libreria grafica per arricchire le tue app.. poi è soggettivo le mie sono soltanto  parole!

Ultima modifica effettuata da Bonny il 30/01/2014 alle 11:14
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:53
Giovedì, 30/01/2014
grazie mille Bonny, sei stato molto chiaro, e ovviamente ringrazio anche tutti gli altri che nn hanno risposto, xkè sto imparando la maggior parte delle cose grazie a questo sito e a wikibooks!:)

Ultima modifica effettuata da il 30/01/2014 alle 14:54
PM Quote
Avatar
Bonny (Member)
Expert


Messaggi: 437
Iscritto: 24/04/2009

Segnala al moderatore
Postato alle 20:58
Giovedì, 30/01/2014
Di niente, figurati!! :k:

PM Quote