Dobrý deň mám tento problém. Prosím poradili by ste mi ?
Fórum › Pascal
Pascal- Chyba syntax ";"
... a přímo ti to píše v popisu chyby. Stačilo by si tu chybu dát do překladače např. na Google. Nevím, jak tvůj kód má fungovat, ale tuším, že by příkazy za druhou podmínkou měli být v "příkazových závorkách" begin/end. Ale to je jen věštění z lógru od kafe.
hu
#2 Kit
Ahoj. Ďakujem. Středníky som tam už dal (No neviem či správne) a teraz mi to hádže toto.
A už neviem čo s tým. Možno je tam iba dáka blbosť. Program má slúžiť na zoradenie čísiel od najmenšieho po najväčšie. Celé to vyzerá takto.
program cisla2;
var A,B,C,A1,B2,C3,M1,M2,M3: integer;begin
writeln('Napíš číslo A');
readln(A);
writeln('Napíš číslo B');
readln(B);
writeln('Napíš číslo C');
readln(C);
begin
if (A>B) then
begin
if (B>C) then
A1:=C;
B2:=B;
C3:=A;
else
if (A>C) then
A1:=B;
B2:=C;
C3:=A;
else
A1:=B;
B2:=A;
C3:=C;
end;
else
begin
if (B<C) then
A1:=A;
B2:=B;
C3:=C;
else
if (A>C) then
A1:=A;
B2:=C;
C3:=B;
else
A1:=C;
B2:=A;
C3:=B;
end;
end;writeln(A1,'--',B2,'--',C3);
readln();end.
if (A>C) then
A1:=B;
B2:=C;
C3:=A;
else
A1:=B;
B2:=A;
C3:=C;
přemýšlej co tam chybí. Nápověda je v mém předchozím příspěvku.
hu
Při splnění podmínky se má provést několik příkazů, při nesplnění jiná sekvence příkazů. Takže sntaxe podmínky je:
if podmínka then
blok kódu 1
else
blok kódu 2
Jak vypadá blok kódu v Pascalu?
O kousek výš to máš dobře....
hu
#7 hlucheucho
Skúsil som toto ale stále to nejde.
begin
if (A>B) then
begin
if (B>C) then
A1:=C;
B2:=B;
C3:=A;
else
begin
if (A>C) then
A1:=B;
B2:=C;
C3:=A;
else
A1:=B;
B2:=A;
C3:=C;
end;
end;
else
begin
if (B<C) then
A1:=A;
B2:=B;
C3:=C;
else
begin
if (A>C) then
A1:=A;
B2:=C;
C3:=B;
else
A1:=C;
B2:=A;
C3:=B;
end;
end;
end;
pořád stejná chyba. Podmínka, kde se provede více příkazů:
if (B<C) then
begin
A1:=A;
B2:=B;
C3:=C;
end;
Určitě ti to ve škole říkali a nebude to tak dávno jako u mne. Navíc by se to dalo i vygůůůůglit. Je to 23 let co jsem něco dělal v Pascalu...
hu
#10 p3can
Před tím "else" má tři příkazy, které zřejmě patří za "then". Proto ty tři příkazy musí být zabaleny do příkazových závorek "begin" ... "end".
A to se opakuje v celém programu několikrát.
#8 alex_laco
Máš begin...end kde nemusí být, a naopak tam kde musí být tak je nemáš. A opravdu před else se středník nepíše.
Ykus to takhle:
if (A>B) then
if (B>C) then
begin
A1:=C;
B2:=B;
C3:=A;
end
else
if (A>C) then
begin
A1:=B;
B2:=C;
C3:=A;
end
else
begin
A1:=B;
B2:=A;
C3:=C;
end
else
if (B<C) then
begin
A1:=A;
B2:=B;
C3:=C;
end
else
if (A>C) then
begin
A1:=A;
B2:=C;
C3:=B;
end
else
begin
A1:=C;
B2:=A;
C3:=B;
end;
Tak, jako, on uz pred IFy mohl naplnit a1,b2,c3. IFama to jen prepsat. Ale prislo mi to nepodstatny, kdyz uz to nedela cyklem, polem nebo funkci/procedurou (ktera porovna dve hodnoty a pripadne je zameni). Tez jsem si nevsiml treba prevod stringu na cislo z readln, nevim, zda to pascal dela sam...
procedure porovnej(aa,bb) begin var tmp; if (aa>bb) then begin tmp=aa; aa=bb; bb=tmp; end;end;
porovnej(a,b);
porovnej(b,c);
porovnej(a,b);
Ale bude to treba prepsat pascalove spravne.
#19 Kit
pokud beres jazyk jako nastroj k dosazeni specifickeho cile, tak fortran z hlediska "matematickych" vypoctu je udajne nejefektivnejsi z vice hledisek.
pokud ale beres jazyk jako komplexni nastroj pro vyvoj, tak podle me c# nema konkurenci protoze pokryva momentalne obrovske mnozstvi platforem (win, linux, andoid, mac + dalsi kompatibilni s mono) a take pokryva siroke spektrum projektu (desktop aplikace, embeded zarizeni, "mikropc", mobily, weby, servery, 3d hry ...)
#20 p3can
C# má silnou konkurenci v C/C++ - je multiplatformní vč. RTOS a systémů bez OS a pokrývá široké spektrum projektů až po low level aplikace na jednočipech. Silná konkurence roste i v Delphi, kde Embarcadero se silně zaměřilo na podporu mobilních zařízení.
hu
Php funguje taky dobre radu let vsude :)
Jinak teda, co do efektivnosti, tak v puvodnim kodu je 5 ifu a a 18 prirazeni (Honzc). Minule jsem napsal, ze staci 3 a prirazeni asi tak polovicka. Nema smysl tedy resit jazyk.
#20 p3can
C# má přímou konkurenci: Javu, která pokrývá stejnou oblast použití.
Zmíněný Fortran je také multiplatformní a pokrývá široké spektrum projektů, jen se o něm tolik nemluví. Dá se použít všude tam, kde se dá použít jazyk C.
#23 Kit
no nechtel bych rozjizdet nejaky flame war. chtel jsem pouze rict ze osobne povazuju C# za nejperspektivnejsi, protoze pokryva nejsirsi spektrum platforem a projektu. c/c++/fortran jsou specializovane jazyky urcene primarne pro "matematicke" typy aplikaci kde se vyzaduje vysoky vykon. to se neda moc srovnavat se C#. alternativa k C# je jedine Java. rozdim mezi java a C# je ten c# pokryva sirsi spektrum (kvuli mono) projektu.
C/C++ není primárně určen pro matematické aplikace
hu
C/C++ je urcen hlavne pro "RTOS a systémy bez OS". dale se jeste pouziva v aplikacich kde se vyzaduje vysoky vykon jako audio/video konventory/knihovny a také 3D hry. o multiplatformnosti by se dalo diskutovat protoze C++ samo o sobe neobsahuje nic jako .NET BCL (nebo ekvivalent standartních knihoven v Jave) takze nevim presne co by se tam sdilelo.
Co se tyka napr RAD Studia XE 6 tak k tomu jsem trochu skepticky protoze v podani embarcadera je z toho pouze je jeden z mnoha "black box" systemu pro vyvoj univerzalnich aplikaci, kdezto xamarin (C#) nabizi pouze port standartnich knihoven do jazyka C#.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Intel syntax vs att syntax — založil jozinzbazin
Dev Pascal, Free pascal - oba mi spustí program 2x po sobě — založil Gooo
Pomoc:pascal:kurz turbo pascal II — založil Systém
Pascal: kurz turbo pascal II — založil Systém
Moderátoři diskuze