Afişează mesaje
Pagini: [1]
1  infoarena - concursuri, probleme, evaluator, articole / Informatica / unit-ul graph in pascal : Februarie 15, 2013, 07:56:01
problema care se pune in cazul asta este, daca o pot numi asa, functionarea defectuoasa
Cod:
PROGRAM X2; 
{Exemplu pentru Bar3D}
USES Graph;
VAR gD, gM, gE: Integer;
BEGIN
gD:= Detect;
InitGraph(gD,gM,'');
gE:= GraphResult;
IF gE<>grok THEN
BEGIN
WriteLn('EROARE GRAFICA : ', GraphErrorMsg(gE));halt(1)
END;
setfillstyle(1,15);
outtextxy(20,2,'Topoff');
bar3d(20,20,65,60,10,topoff);
outtextxy(140,2,'Topon');
bar3d(140,20,185,60,10,topon);
bar3d(30,80,105,120,10,topon);
setfillstyle(2,15);
bar3d(105,100,175,120,10,topon);
readln;
CloseGraph
END {X14}.


toata lumea o sa spuna ca este in regula....  dar nu este.
la lansarea in executie initgraph functioneaza, dar modul text ramane activ, asta insemnand ca...
se afiseaza bar3d dar la readln nu raspunde
La readln dupa cate stiu, se asteapta apasarea #13 adik enter dar nu este citit asa ca nu se efectuiaza nici close graph nici nimic altceva
Am incercat sa folosesc si unit-ul crt, si in loc de readln am pus readkey, care ar trebui sa citeasca orice tasta.  aceiasi problema
se asteapta citirea tastelor in modul text, care ramane activ si el

Ma poate ajuta cineva
De ce anume la initgraph ramane activ si modul text
De ce se ateapta  cititea   comenzilor de la  tastatura in modul text
cum sa procedez pentru o functionare corecta
exista ceva setari ascunse in Free Pascal pentru asta
2  infoarena - concursuri, probleme, evaluator, articole / Informatica / dev pascal : Octombrie 07, 2012, 16:43:01
salutare...

Ceva probleme pe aici iar...
am nevoie de  putin ajutor,  nu pot folosi dev pas pe care l-am instalat, pur si simplu nu complileaza. Acelasi program pe care l=am compilat in free pascal in dev nu se compileaza.  mereu apare cate o eroare
Ma poate ajuta  cineva.
Si pentru ca tot a  venit vorba de ajutor, ma poate ajuta cineva privitor la unit-urile din free pascal, spre exemplu nu pot folosi graph, sau open gl,...
care este explicatia.. in folderul unit exista dar la compilare spune ca  nu a putut gasi unit-ul respectiv
HELLLLLLLLLLLLLLLLLLLLP
3  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: fisier de 50 GB cum se prelucreaza cu pascal ??? : Mai 02, 2012, 11:22:12
problema e in felul urmator
codul l-am testat si l-am re-testa de mi-a venit acru in gura

faza e  ca acest FPC pe 64  mi-a bulti codu' 
ce pot sa fac acum
nici unul din programelele pe care le scrisesem nu mai functioneaza
sa le rescriu din nou

mi-a luat o gramada
si eu abia ce am invatat  un pic de pascal  in aste 2 luni 

poate exista  o alta solutie
un alt compilator  de pasca pe 64
un borland sau un turbo de ex
  ceva idei
4  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: fisier de 50 GB cum se prelucreaza cu pascal ??? : Mai 02, 2012, 10:01:46
salutare din nou

ok  foarte buan faza cu win pe 64
am pus si asa ceva si am luat si FPC pe 64
dar exista o problema

nu asculta de program si nu pot sa dau assign

ce sa fac
tre sa termin cu programelul asta
 
Cod:

program calcul;
uses crt;
var
nume,nume2:string;
f,g:text;
suma, smin, smax: integer;
ch:byte;

begin
writeln;
writeln;
writeln(' Numele fisierului : => '); read(nume);

assign(f,nume); reset(f);
writeln;
writeln;
writeln(' Numele fisierului de iesire :'); read(nume2);
assign(g,nume2); rewrite(g);
clrscr;
writeln;
writeln;
Writeln(' Suma minima : => '); read(smin);
writeln;
writeln(' Suma maxima : => '); read(smax);

repeat
suma:=0;
while not eoln(f) do
read(f,ch);
write(ch,' ');
suma:=suma+ch;
for suma:= smin to smax do
begin
write(ch,' ');
write(g,ch,' ');
end;
begin
readln(f);
end;
until eof(f);
readkey;
end.


 se comporta cam asa
imi cere sa scriu fisierul din care incarc
apoi sare peste fisierul al doilea total  nu zice nimik de el
imi cere suma minima si suma maxima
si parca ar vrea sa  lucreze  doar un blink al cursorului

trebuiesc facute ceva setari in FPC ?
5  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: fisier de 50 GB cum se prelucreaza cu pascal ??? : Mai 01, 2012, 21:41:06
nu iti fa probleme de asta
ideea era ca in ultimul timp nu prea ma m-am interesat  de calculator
asta nu inseamna ca e vechi
ma refeream la faptul ca  nu prea le am eu ....dar nu conteaza

Oricum Multam pentru sfat
acum m-am pus la Down   cu 7-le pe 64 bit

de unde ziic ca pot sa iau pascal pe 64 bit ??
6  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: fisier de 50 GB cum se prelucreaza cu pascal ??? : Mai 01, 2012, 21:22:04
mi-ai face un mare bine daca mi-ai scrie si un link de unde sa iau FPC pe 64 de biti
si inca o intrebare
tre sa schimb si partitiile ??  ddaca da, din NTFS in CE ?

scuze dar am ramas mult in urma cu tehnologiile astea (la drept vorbind nu credeam sa ma lovesc atat de tare de PC mai ales la Biserica, dar orice hobby e bine venit nu ?)

Scuze pt palavrageala in plus.... dar e specialitatea mea !!!
7  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: fisier de 50 GB cum se prelucreaza cu pascal ??? : Mai 01, 2012, 20:38:22
sistemul este Win XP pe 32
iar compilatorul  apartine lui Borland pascal
ce sa fac sa trec pe 64 de bitzi
sa fac rost de alta varianta de pascal
sau pe amandoua ?


scuze ca inreb dar chiar nu mai inteleg

{oare un sistem de operare pe 64 de biti poate deschide un fisier de 50 de GB ?[/b]
8  infoarena - concursuri, probleme, evaluator, articole / Informatica / fisier de 50 GB cum se prelucreaza cu pascal ??? : Mai 01, 2012, 19:02:09
Salutare


Toata nebunia a luat sfarsit,.., cel putin asa am crezut , pana la proba contrarie

Problema mea era sa generez solutiile A de N luate cate K unde N = 80 si K = 20
am rezolvat-o (done)

dupa aceea trebuia sa gasesc metoda de a compara solutiile obtinute pe criteriul sumei
adika se dau spre ex suma minima 500 si suma maxima 800

au un numar de n+1 solutii (randuri)

trebuia scris programelul care sa afiseze numerele comune (adik cele care se repeta) in aceste solutii
Teoretic e gata (done ) problema depasita si asta

acum trebuie sa extrag aceste solutii adik fiecare aranjament in parte, sa vad care intre intre aceste doua cerinte suma nimima si suma maxima

problema e ca la acea comanda ASSIGN( F, NUME)
imi da o eroare frumoasa
ERROR5. ! FILE ACCESS DENIED

intrebarea mea este !!!

CUM SA ACCESEZ FISIERUL ACESTA CA SA IL POT CITI ?

VREO IDEE ?

am incercat asa

Cod:

program calcul;
uses crt;
var
nume,nume2:string;
f,g:text;
suma, smin, smax: integer;
ch:byte;

begin
writeln;
writeln;
writeln(' Numele fisierului : => '); read(nume);
clrscr;
assign(f,nume); reset(f);
writeln;
writeln;
writeln(' Numele fisierului de iesire :'); read(nume2);
assign(g,nume2); rewrite(g);
clrscr;
writeln;
writeln;
Writeln(' Suma minima : => '); read(smin);
writeln;
writeln(' Suma maxima : => '); read(smax);

repeat
suma:=0;
while not eoln(f) do
read(f,ch);
suma:=suma+ch;
for suma:= smin to smax do
begin
write(ch,' ');
write(g,ch,' ');
end;
begin
readln(f);
end;
until eof(f);
readkey;
end.



insa eroarea de mai sus nu imi da voie
as vrea sa stiu cum sa fac sa il accesez
am nevoie de el ,  datele ce trebuiesc prelucrate sunt in el


ma gandeam ca exista ceva comenzi care il forteaza sa incarce in memoria virtuala
i-am dat voie windows-ului meu XP sa faca 60 GB de Swap, numai sa pot sa incarc acest fisier,
problema de acum este ca nu vrea sa faca ASSIGN (F, NUME)


VREO IDEE ?
multumiri anticipate
9  infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: Mesaje de eroare : Mai 01, 2012, 17:31:09
asa am incercat sa il deschid
Cod:
program calcul;
uses crt;
var
nume,nume2:string;
f,g:text;
suma, smin, smax: byte;
ch:byte;

begin
writeln;
writeln;
writeln(' Numele fisierului : => '); read(nume);
clrscr;
assign(f,nume); reset(f);
writeln;
writeln;
writeln(' Numele fisierului de iesire :'); read(nume2);
assign(g,nume2); rewrite(g);
clrscr;
writeln;
writeln;
Writeln(' Suma minima : => '); read(smin);
writeln;
writeln(' Suma maxima : => '); read(smax);

suma:=0;
read(f,ch);
suma:=suma+ch;
for suma:= smin to smax do
begin
write(ch,' ');
write(g,ch,' ');
end;
readkey;
end.


vreo idee ?
multumesc anticipat !!
10  infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: Mesaje de eroare : Mai 01, 2012, 17:29:48
Salutare
Am si eu o problema  la care caut raspuns si rezolvare in acelasi timp
am un fisier TXT de 50.3 GB pe care vreau sa il prelucrez cu un program pascal
problema e ca in momentul in care incerc sa rulez dupa ce am introdus calea fisierului imi zice cam asa

ERROR 5:  FILE ACCES DENIED  !!!

ce trebuie sa fac pentru a deschide fisierul

Mentionez de asemenea ca  acel fisier contine solutiile formulei matematice a ARANJAMENTELOR
unde N=80
K= 20

asta inseamna ca are miliarde de linii


Cod:
11  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Problema cu fisier text in pascal : Aprilie 30, 2012, 11:39:38
problema cu matricea este ca...
o declar asa

Cod:

program caut_cu_matrice;
uses crt;
const
n=20;
max=1600;
type
index = 1..1000000;
var

    a:array[1..max,1..20] of integer;
    m,i,j,k:byte;
    com:boolean;
    f:text; ch: byte;

begin
clrscr;
writeln;
writeln;   textcolor(white);
Writeln('Nr linii? ');read(m);
{Write('Nr Coloane? ');readln(n);}
assign(f,'i:\8.txt'); reset(f);
clrscr;
writeln;
writeln;
writeln(' Lucrez ...');
for i:=1 to m do for j:=1 to n do begin
 {write(i,', ',j,': ');
 readln(a[i,j]);}
 read(f,ch);
 a[i,j]:=ch;
end;

clrscr;
writeln;
writeln;
for i:=1 to m do begin
 writeln;
 for j:=1 to n do write(a[i,j],' ');


end;

writeln;
writeln;
write(' In toate liniile sunt: ');
for k:=1 to n do begin
 i:=2; j:=1;
 while(i<=m)and(j<=n)do begin
  j:=1;
  while(j<=n)and(a[i,j]<>a[1,k])do inc(j);
  inc(i);
 end;                 textcolor(red);
 if(i>m)and(j<=n)then
 Write(a[1,k],' ');  textcolor(white);
end;

{write(#$D#$A+'b) In toate coloanele sunt: ');}
for k:=1 to m do begin
 j:=2; i:=1;
 while(j<=n)and(i<=m)do begin
  i:=1;
  while(i<=m)and(a[i,j]<>a[k,1])do inc(i);
  inc(j);
 end;
 if(j>n)and(i<=m)then{ Write(a[k,1]:5);    }
end;





readkey
end.



problema e limita
nu poate citi mai mult decat constanta max=1600
daca maresc aceasta constanta nu mai merge  imi da

ERROR 22:  STRUCTURE TOO LARGE

asta inseamna ca  am depasit ce
puterea de calcul
declaratiil tipului Huh

scuze dar nu inteleg


de aia ma gandisem sa fac cumva sa verific fisierul linie cu linie cu unul sau mai multi vectori

problema ca e nu merge
nu stiu sa  asez  instructiunile

am incercat asa

Cod:

PROGRAM linear_search;
USES crt;
const
n=20;
kin=80;

TYPE index=1..100;

VAR cautat,i,j:integer;
    gasit:boolean;
    control,arr:ARRAY[1..100] OF index;
    f:text; ch:byte;

    BEGIN
    clrscr;
     writeln('LINEAR SEARCH');
     assign(f,'i:\1.txt'); reset(f);

     for j:=1 to kin do
     begin
     control[j]:=j;
     cautat:=control[j];

     end;

     while not eof(f) do
     begin
     FOR i:=1 TO n DO
     BEGIN
          read(f,ch);
          write(ch,' ');
          arr[i]:=ch;
             j:=0;
     END;
     writeln;

     begin
     repeat
     j:=j+1;
     cautat:=control[j];

         i:=1;
     gasit:=false;

     WHILE ((i<=n) AND (gasit=false)) DO
     BEGIN
          IF arr[i]=cautat THEN
          gasit:=true
          ELSE gasit:=false;
          i:=i+1;
     END;
     IF gasit=true THEN
     writeln('Element gasit',' ',cautat)
    { ELSE
     writeln('Elementul.. ',' ', cautat,'.. nu a fost gasit');}
     until control[j] = kin;
     writeln;
end;
end;
readkey;
END.




dar si aici ma  incurc
nu stiu unde sa pun repeatul, asta daca trebuie pus,

in cazul asta cu vectorul arr de tip index

ori imi cauta decat in prima linie roate numerele din vectorul control

ori se blocheaza



cum ar trebui sa fac ?


vreo idee?


mersi pentru sugestii  oricum !!!!


scuze pentru deranj !!
12  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Problema cu fisier text in pascal : Aprilie 30, 2012, 10:30:16
da
dar problema e ca nu stiu cum sa fac
 
Imi poti da o idee ?

cam ce ar trebui sa ii spun vectorului sa faca ?
13  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Problema cu fisier text in pascal : Aprilie 30, 2012, 10:07:29
cerinta numarul 2
 pre exemplu pt suma:= 744
imi trebuie sa stiu cate numere comune am
astainseamna  ca una din linii am
2 9 11 17 18 22 25 27 29 35 36 38 40 42 53 54 59 72 77 78
iar pe cealalta
2 9 11 19 20 21 23 80 31 50 35 39 36 46 61 41 70 44 69 37

ceea ce trebuie sa imi afiseze mie ca rezultat este

numere comune sunt
2 9 11 36

adika numere care se repeta si intr-o lini si in alta

14  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Problema cu fisier text in pascal : Aprilie 30, 2012, 09:57:18
pentru suma  am rezolvat
 
problema imi ramane insa principiul cautarii
si determinarea numerelor comune fiecarei linii cuprinse in suma

cum ar trebui sa fac ?
15  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Problema cu fisier text in pascal : Aprilie 30, 2012, 09:55:28
poate ca este gresit ,  si sigur este
acel repeat nu face mare treaba
imi verifica doar in primul rand existenta unuia din numerele [1..80]
ideea ar fi sa verifice existenta  cui control[j] in fiecare din randurile fisierului
iar cand  ajunge la capat EOF(f) in cazul in care  control[j] a fost gasit sa imi afiseze valoarea lui J ca si numar comun
si sa inceapa citirea  fisierului F de la linia 1 (adika de la capat) si verificarea cu control[j+1)

Spuneti-mi va rog unde gresesc, si cum sa repar aceasta greseala

mentionez ca nu am studiat la scoala informatica sau programare  si imi cer scuze pt deranj

Va multumesc anticipat...
16  infoarena - concursuri, probleme, evaluator, articole / Informatica / Problema cu fisier text in pascal : Aprilie 30, 2012, 09:49:11
 Read This!

Salutare
Am si eu o ne-lamurire

Folosind formula Aranjamentelor matematice (mai exact A de 80 luate cate 20) am generat un fisier de  50 de GB
asta inseamna ca am optinut un numar de linii x (nu le-am numarat inca)
ceea ce  vreau  sa fa este urmatorul lucru

Stiind ca fiecare linie contine 20 de numere:
1 sa calculez suma fiecareia ...
2 in functie de  o limita inpusa de mine Suma-minima si Suma-maxima
   sa calculez in aceste linii,   
        cate numere conume am


Cod:

PROGRAM linear_search;
USES crt;
const
n=20;
kin=80;

TYPE index=1..100;

VAR cautat,i,j:integer;
    gasit:boolean;
    control,arr:ARRAY[1..100] OF index;
    f:text; ch:byte;

    BEGIN
    clrscr;
     writeln('LINEAR SEARCH');
     assign(f,'i:\1.txt'); reset(f);

     for j:=1 to kin do
     begin
     control[j]:=j;
     cautat:=control[j];

     end;

     while not eof(f) do
     begin
     FOR i:=1 TO n DO
     BEGIN
          read(f,ch);
          write(ch,' ');
          arr[i]:=ch;
             j:=0;
     END;
     writeln;

     begin
     repeat
     j:=j+1;
     cautat:=control[j];

         i:=1;
     gasit:=false;

     WHILE ((i<=n) AND (gasit=false)) DO
     BEGIN
          IF arr[i]=cautat THEN
          gasit:=true
          ELSE gasit:=false;
          i:=i+1;
     END;
     IF gasit=true THEN
     writeln('Element gasit',' ',cautat)
    { ELSE
     writeln('Elementul.. ',' ', cautat,'.. nu a fost gasit');}
     until control[j] = kin;
     writeln;
end;
end;
readkey;
END.




eu asa am incercat
Pagini: [1]
Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines