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 - Rappresentare graficamente programma
Forum - Pascal - Rappresentare graficamente programma

Avatar
Petenausen (Normal User)
Newbie


Messaggi: 11
Iscritto: 26/04/2011

Segnala al moderatore
Postato alle 14:36
Lunedì, 30/05/2011
Codice sorgente - presumibilmente Delphi

  1. program carica;
  2. var
  3. ic1,C,ic,DVc,Vcc,Vc,Dt,R,n,t2,T,dT1:real;
  4.  
  5. i:word;
  6.  
  7. begin
  8.  
  9. writeln('inserisci il valore della resistenza in KOhm');
  10. readln(R);
  11. writeln('inserisci il valore del condensatore in nano Farad');
  12. readln(C);
  13. t:=(R*c)/1000;
  14. writeln('introduci il valore di Vcc');
  15. readln(Vcc);
  16. DT:=t/10;
  17.  
  18. for i:=1 to 50 do
  19. begin
  20. ic1:=Vcc-Vc;
  21. ic:=(ic1/R);
  22. DVc:=1000*(ic*Dt)/C;
  23. Vc:=Vc+DVc;
  24. writeln('il valore di ic Š ',ic:2:3);
  25. writeln('il valore di Dvc Š ',DVc:2:2);
  26. readln;
  27. Dt1:=Dt+Dt1;
  28. end;
  29. end.



Questo è il programma io dovrei rappresentare graficamente l'andamento di ic e di Dvc qualcuno potrebbe aiutarmi perchè non ho alba di come farlo

Ultima modifica effettuata da Phi il 30/05/2011 alle 19:28
PM Quote
Avatar
Lafa_96 (Normal User)
Pro


Messaggi: 111
Iscritto: 09/03/2011

Segnala al moderatore
Postato alle 18:03
Lunedì, 30/05/2011
io non sono un genio in fisica quindi su quel lato non ti posso aiutare, comunque mi pare di aver capito che ti serve un grafico a mo di piano cartesiano giusto? per farlo inizializzi la grafica, poi disegni i 2 assi x e y e stabilisci le misure da riportare sugli assi, alla fine devi disegnare una serie di linee che rappresentino l'andamento e per farlo devi adattare i valori che hai al numero di pixel di cui disponi per "disegnare", in pratica devi riportare il grafico che faresti a mano usando gli stessi procedimenti che fai con carta e penna ma su uno schermo; come ti ho detto io non so come si disegna un grafico del genere ma in generale la procedura è questa

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 21:17
Lunedì, 30/05/2011
Ciao!

Segui il consiglio di Lafa_96. Qui ci sono le funzioni principali per la grafica: http://www.pierotofy.it/pages/guide/Guida_Pascal/Appendice ...

Oppure rappresenta la funzione posizionando caratteri sulla finestra di console.  

PM Quote
Avatar
Petenausen (Normal User)
Newbie


Messaggi: 11
Iscritto: 26/04/2011

Segnala al moderatore
Postato alle 15:26
Martedì, 31/05/2011
si ma non riesco proprio a capire come funziona la grafica

PM Quote
Avatar
Petenausen (Normal User)
Newbie


Messaggi: 11
Iscritto: 26/04/2011

Segnala al moderatore
Postato alle 15:32
Martedì, 31/05/2011
si ma non riesco proprio a capire come funziona la grafica

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 21:07
Martedì, 31/05/2011
Testo quotato

Postato originariamente da Petenausen:

si ma non riesco proprio a capire come funziona la grafica



Esattamente cosa non hai capito?
Che compilatore usi?

Posta il codice con il tentativo che hai fatto.

PM Quote
Avatar
Lafa_96 (Normal User)
Pro


Messaggi: 111
Iscritto: 09/03/2011

Segnala al moderatore
Postato alle 19:26
Mercoledì, 01/06/2011
allora per usare la grafica la devi prima inizializzare, per fare questo devi innanzitutto utilizzare la libreria graph che viene inserita in questo modo:

uses graph;
la stringa qui sopra la devi mettere subito sotto la riga dove c'è il nome del programma, e se usi altre librerie basta separarle da una virgola.
poi ti servono 2 variabili che in Dev pas devono essere dichiarate "smallint" mentre in fpc e tp devono essere dichiarate integer.
una volta dichiarate queste 2 variabili che chiamerai come vuoi puoi fisicamente inizializzare la grafica, e per farlo devi fare così:
Codice sorgente - presumibilmente Delphi

  1. program prova;
  2. uses graph;
  3. var a,b:smallint (*smallint per dev pas integer per altri complilatori*);
  4. begin
  5. a:=detect;
  6. initgraph(a,b,'Stringa che deve essere uguale alla directory dell'eseguibile del compilatore');
  7. closegraph;
  8. readln
  9. end.



ci sono un paio di cose da precisare, la grafica non è incorporata nel programma stesso, in pratica quando inizializzi la grafica ti viene aperta una seconda finestra su cui viene disegnato tutto e la finestra con il programma vero e proprio viene messa in secondo piano, quindi ti consiglio prima di fare tutto il tuo programma e solo alla fine scrivere initgraph....in modo che prima l'utente inserisca i dati e poi viene avviata la grafica per la rappresentazione.
alcune precisazioni sulle istruzioni qui sopra:
le 2 variabili che hai dichiarati servono a rilevare la scheda e la stringa deve essere la directory della cartella del compilatore che usi e se proprio vuoi fare il precisino puoi scrivere questa istruzione subito dopo aver inizializzato la grafica
Codice sorgente - presumibilmente Pascal

  1. if graphresult<>ok then halt(0);



questa istruzione stoppa il programma se la grafica vine avviata male! per quanto riguarda tutte le istruzioni che ti serviranno apri il link che ti ha postato poggi marco e a fondo pagina ci sono tutte le istruzioni!
visto che spiegare a parole è difficile ti allego un sorgente di un mio programma che non fa altro che disegnare un rettangolo su un piano cartesiano dati misure del lati e coordinate sugli assi...p.s.:il sorgente è ampiamente commentato comunque se non ti fosse chiaro qualcosa scrivi che cosa e vedrò se riuscirò a chiarire i tuoi dubbi!
p.p.s.:scusate se c'è qualche errore nei codici ma li ho scritti alla veloce!


Lafa_96 ha allegato un file: Nuova cartella compressa.zip (1288 bytes)
Clicca qui per scaricare il file

Ultima modifica effettuata da Lafa_96 il 01/06/2011 alle 20:00
PM Quote