Wątek przeniesiony 2016-01-20 22:31 z Delphi i Pascal przez furious programming.

Równanie liniowe w Pascal'u

0

Hej zadanie pochodzi z http://main.edu.pl/pl/user.phtml?op=showtask&task=row&con=PAS
To jest mój kod

program liniowe;

var a,b: integer;

begin
read(a,b);

if ((a>=0)and(a<=1000) and (b>=0)and(b<=1000)) then
begin
        begin
        if((a=0)and(b=0)) then writeln('NIESKONCZONOSC');
        end;

        if (a<>0) then
        begin
        writeln(1);
        end;

        if ((a=0)and(b<>0)) then
        begin
        writeln(0);
        end;
end
end.

Na stronie kiedy sprawdzam kod pokazuje mi 4 błędy:

1 wiersz 1: wczytano '1', a oczekiwano '0'
2 wiersz 1: wczytano '1', a oczekiwano '0'
3 wiersz 1: wczytano '1', a oczekiwano '0'
4 wiersz 1: wczytano '1', a oczekiwano '0'

Co robie źle ?

3
  1. zapoznaj się z pojęciem formatowania kodu: http://4programmers.net/Forum/998482 bo nie wiesz co robisz
  2. tego: if ((a>=0)and(a<=1000) and (b>=0)and(b<=1000)) then nie musisz sprawdzać to gwarantuje sprawdzarka.
  3. tylko tyle potrzebne:
var a,b: integer;
const ret:array[Boolean,Boolean] of string=(('NIESKONCZONOSC','0'),('1','1'));
begin
  ReadLn(a,b);
  WriteLn(ret[a<>0,b<>0]);
end.

1 użytkowników online, w tym zalogowanych: 0, gości: 1