Results 1 to 5 of 5
Thread: Âúïðîñ çà Pascal
Hybrid View
-
24th March 2012 22:04 #1
Âúïðîñ çà Pascal
Çäðàâåéòå!
Îïèòâàì ñå äà íàïèøà åäíà ïðîãðàìà, êîÿòî ìè å ÷àñò îò çàäàíèå â óíèâåðñèòåòà. Íàïèñàõ êðèâî-ëÿâî ïðîãðàìàòà, íî íà åäèí ðåä ìè äàâà ãðåøêà, êîÿòî, ñòðóâà ìè ñå, íå å ëîãè÷íà.
Óñëîâèåòî å: Äà ñå ñúñòàâè è èçïúëíè ïðîãðàìà, êîÿòî äà èç÷èñëÿâà ñòîéíîñòòà íà ôóíêöèÿòà çà àðãóìåíò, âúâåæäàí îò êëàâèàòóðà è äà èçâåæäà ðåçóëòàòà.
F(x)=0, çà õ <= 1
F(x)= 1,126x, çà 1< õ <=2
F(x)= 0,232õ çà 2<õ<=3
F(x) = 1,16x çà õ > 3
Åòî è òåêñòúò íà ïðîãðàìàòà:
Ñïîðåä âàñ èìà ëè ãðåøêà â òàêà íàïèñàíàòà ïðîãðàìà?Code:program zad_5_1; var X, Y:Real; begin Writeln ('Vyvedete X'); Readln(X); if X<=1 then begin Y:=0; Writeln ('Y=0'); end else begin if (X>1) and (X<=2) then Y:=1.126*X; Writeln ('Y=',Y:4:2); end else begin if (X>2) and (X<=3) then Y:=0.232*X; Writeln ('Y=',Y:4:2); end else begin if x>3 then Y:=1.16*X; Writeln ('Y=',Y:4:2); end; end; Readln; end.
-
24th March 2012 23:00 #2Mire-x
Join Date: Apr:2005
Location: Sofia
Posts: 763
Äà, èìà. À àêî áåøå íàïèñàë êàêâî òè äàâà êîìïèëàòîðúò, âìåñòî äà êàðàø äà ãàäàåì, ùÿõ è äà òè êàæà êúäå å.
(10b) || !(10b)
-
24th March 2012 23:21 #3
Çàáðàâèë ñè ïîíå äâà begin-a è íÿêîëêî end; -a.
Êîãàòî ñå ïèøå ïðîãðàìà, íàé-âàæíîòî å äà ïîñòðîèø è íå îáúðêàø ñêåëåòà íà ëîãè÷åñêèòå ÷àñòè. Òàêà âñåêè ìîæå äà ñå îáúðêà, çàòîâà àç ïúðâî âèíàãè íàïèñâàì ñêåëåòà èëè ïîíå íà îòäåëíè ãðóïè, çà äà íå ñå ÷óäÿ ïîñëå êúäå ñúì èñêàë äà ñëîæà begin (èëè { ), èëè åíä íà äàäåí êîä.
Çàòîâà è âèíàãè å âàæíî äà ñå ñïàçâàò îòìåñòâàíèÿòà.
-
25th March 2012 11:54 #4Áëàãîäàðÿ çà îòãîâîðèòå! Êîìïèëàòîðúò îòêðèâà ãðåøêà â îòáåëÿçàíèÿ ãîðå "else". Èñêà ";" ïðåäè íåãî, íî ñëåä êàòî ãî ñëîæà, îòíîâî äàâà ãðåøêà íà ñúùîòî ìÿñòî - Error in statement. Áëîêèðàõ îòêúì èäåè, ñèãóðíî å ãëóïàâà ãðåøêà, íî âúîáùå íå ÿ îòêðèâàì!Code:
program zad_5_1; var X, Y:Real; begin Writeln ('Vyvedete X'); Readln(X); if X<=1 then begin Y:=0; Writeln ('Y=0'); end else begin if (X>1) and (X<=2) then Y:=1.126*X; Writeln ('Y=',Y:4:2); end else begin if (X>2) and (X<=3) then Y:=0.232*X; Writeln ('Y=',Y:4:2); end else - ÒÓÊ ÄÀÂÀ ÃÐÅØÊÀÒÀ begin if x>3 then Y:=1.16*X; Writeln ('Y=',Y:4:2); end; end; Readln; end.
-
25th March 2012 12:57 #5




Reply With Quote

Lenovo ThinkPad 15 èëè IdeaPad 15
5th May 2023, 22:16 in Ìîáèëíè êîìïþòðè