Oppure

Loading
30/01/14 6:20
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 30/01/14 6:21
30/01/14 9:27
nessuno
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à.
30/01/14 9:33
Bonny
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.
Function Sum(A, B : integer) : integer;
Begin
    Sum := (A + B)
End.

var c:integer;
c := Sum(4, 6);

writeln(c); //output "10"


2) Vogliamo creare una procedura che accetta come parametro due interi e ne scambia il valore.
Procedure Swap(var A,B : integer);
var appoggio : integer;
Begin
    appoggio:=B;
    B:=A;
    A:=appoggio
End;

var c, b :integer;
c := 4;
d := 6;

Swap(c, d);
//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:

Function Trova(v: array of integer, x:integer)
  var
     trovato:boolean,
     i:integer;
begin

     trovato:=false;
     i:=Low(v) //parti dal primo elemento dell'array
     
     //scorri tutte le celle fino all'ultima E fino a quando trovato è false
     while(i < High(v) and not trovato) do
       begin
           if(v[I] == x)
              trovato:=true;
           else
              I:= I + 1;
       end

       Trova:= trovato;
end;

var v [6,8,1,3,22] of integer;
var x = 1;

var risultato:boolean;

risultato:= Trova(v , x);

if(risultato == true)
   writeln("Trovato!!");
else
   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 30/01/14 10:14
aaa
30/01/14 13:53
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 30/01/14 13:54
30/01/14 19:58
Bonny
Di niente, figurati!! :k:
aaa