@up
A kto cię uczył innych języków i jakich ? No i oczywiście ile lat siedzisz w Informatyce/Programistyce bo widzę, że zarejestrowany jesteś od 2005, ja w tym roku umiałem na kompie jedynie w Crusadersy grać i robić mapki na silniku jakiejś innej gry...
@up2
Tak ale wprowadzający MUSI wpisać kod ASCII zgadza się ? Mi chodzi o to by Komputer sam sobie ZNAK tłumaczył na kod, a nie, że wprowadzający musi szukać :)
Zresztą tyle to sam się domyśliłem, cały czas mi chodzi JAK do tablicy (dla mnie jeden pies) wprowadzić LITERKĘ "a" po czym program ją sobie przetłumaczy na 97 i będę mógł z nią robić co zechcę (zmniejszać zwiększać porównywać)
Tutaj fragmenty kodu z wytłumaczeniem jak to MIAŁO działać w teorii:
uses
Crt; {nie trzeba tłumaczyć}
var
a : array[1..1000] of char;
q : char; {deklaracja zmiennych a czyli LITERKĘ w tablicy, q czyli POMOCNICZA literka potrzebna do porównywania i b,x,z,y czyli pomocnicze zmienne przydatne do pętli}
b, x, z, y, wyjscie : word;
begin
clrscr;
read(b); {wpisujemy ile ZNAKÓW chcemy w tablicy}
for x := 1 to b do {program zaczyna robić pętelkę}
read(a[x]); {,a użytkownik wpisuje ZNAKI jakie tam sobie wymyśli czyli małe albo duże literki} {Program przestaje działać na tym etapie}
for x := 1 to b do { Program zaczyna zapętlać się b razy}
begin {rozpoczynając:}
q := a[x]; { pomocnicza literka staje się pierwszą literką z naszej tablicy np.: "A"}
for y := 1 to 32 do {znów krążymy ale tylko 32 razy}
Inc(q); { po to aby nasze q w kodzie ASCII zostało zwiększone o 32, a jak wiemy każda duża literka zwiększona w kodzie ASCII o 32 staje się tą samą ale małą literką}
for z := 1 to b do
if a[z] = q then {program porównuje każdą literkę w tablicy, ze zmienną pomocniczą czyli q, które w tym przypadku wynosi "A" jeśli są równe}
wyjscie := wyjscie + 1; {do wyjścia zostaje dodana liczba 1}
end;
for x := 1 to b do {tutaj dzieje się to samo tylko że nasza literka zostaje ZMNIEJSZONA o 32, a każda MAŁA literka w kodzie ASCII zmniejszona o 32 staje się literką DUŻĄ}
begin
q := a[x];
for y := 1 to 32 do
Dec(q);
for z := 1 to b do
if a[z] = q then {Porównanie, jeśli są takie same do wyniku zostaje dodany 1}
wyjscie := wyjscie + 1;
end; {Krąży to tak długo, aż wszystkie literki zostaną ze sobą porównane}
clrscr;
write(wyjscie);
delay(5000);
end.
Boże jeszcze mniej czytelny O_o