توی massege ها میگه کجای کار مشکل داره....
این برنامه رو اجرا کن ببین مشکل داره باهاش و اگه داره ببین تو Massegeها چی مینویسه اونو بذار...
کد:uses crt; var adad: array [1..255] of integer; inter,tak,amal:string; e,c,w,i,j,tol,io,v,z,y,iop:integer; adad1,adad2:longint; op,opera:char; flag:boolean; save:text; begin clrscr; write ('Please Inter Formula (for example 2+3) : '); repeat flag:=true; readln (inter); tol:= length(inter); if tol=0 then begin write ('it is blank... please try again: '); flag:=false; end; for i:= 1 to tol do begin tak:= inter [i]; if tak='0' then adad [i]:= 0 else if tak='1' then adad [i]:= 1 else if tak='2' then adad [i]:= 2 else if tak='3' then adad [i]:= 3 else if tak='4' then adad [i]:= 4 else if tak='5' then adad [i]:= 5 else if tak='6' then adad [i]:= 6 else if tak='7' then adad [i]:= 7 else if tak='8' then adad [i]:= 8 else if tak='9' then adad [i]:= 9 else if tak='+' then adad [i]:= 10 else if tak='-' then adad [i]:= 20 else if tak='/' then adad [i]:= 30 else if tak='*' then adad [i]:= 40 else begin write ('invalid format. please try again: '); flag:=false; break; end; end; for i:= 1 to tol do begin j:=adad[i]; if (j=10) or (j=20) or (j=30) or (j=40) then begin z:=i+1; for c:= z to tol do begin y:=adad[c]; if (y=10) or (y=20) or (y=30) or (y=40) then begin write ('invalid format. please try again: '); flag:=false; break; end; end; end; end; v:=adad[1]; if (v=10) or (v=20) or (v=30) or (v=40) then begin write ('invalid format. please try again: '); flag:=false; end; w:=adad[tol]; if (w=10) or (w=20) or (w=30) or (w=40) then begin write ('invalid format. please try again: '); flag:=false; end; for i := 2 to tol-1 do begin w:=adad[i]; if (w=10) or (w=20) or (w=30) or (w=40) then begin io:=adad[i]; iop:=i; break; end else if (i=tol-1) then begin write ('invalid format. please try again: '); flag:=false; end; end; until flag=true; case io of 10 : op:='+'; 20 : op:='-'; 30 : op:='/'; 40 : op:='*'; end; assign (save,'save.dat'); rewrite (save); writeln (save,op); for i:= 1 to iop-1 do write (save,adad[i]); writeln(save,''); for i:= iop+1 to tol do write (save,adad[i]); close (save); reset (save); readln (save,opera); readln (save,adad1); readln (save,adad2); close(save); writeln (adad1,' ',opera,' ',adad2); write ('Result: '); case opera of '+' : Write (adad1+adad2); '-' : Write (adad1-adad2); '*' : Write (adad1*adad2); '/' : Write (adad1/adad2); end; writeln; write ('Press enter to exit...'); readln; end.
خوب جناب میگه کدوم خط مشکل داره دیگه. یه اطلاعات دقیقتر بده بشه بفهمی عیب کار از کجاست...
متن کامل بده اگه اسکرین شات بتونی بدی که چه بهتر....
ctrl + f9 میزنی این خطا رو میده ؟
ویندوزت چی هست ؟ چند بیتی ؟
begin
end.
خالی بزنی هم خطا میگیره ؟
شما فقط .begin end زدی ؟
این چرا خطای wincrt گرفته ؟ شما گفتی wincrt یا خودش ؟ اصلا تو این کامپایلری که من دادم wincrt تعریف نشده ! شما با کدوم کامپایلر میری ؟!
مطمئنم کامپایلر مشکلی نداره چون دیشب خودم یجا برای یه نفر از همون آدرس دانلود کردم و نصب کردم براش.
ولی تو اینکه شما کاری که من دارم میگم انجام بدی شک دارم !
شما کامپایلری که من گفتم از مسیر c:\tp\Turbo Pascal 7.0.pif اجرا کن
صفحه خالی باشه
توش فقط و فقط بنویس
خط اول begin بعد هم end. هیچی دیگه هم نمیخواد بعد ctrl + f9 کن ببین خطا میده یا اجرا میشه و بسته میشه سریع...
در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)