mam do napisanie program:
program, w którym po podaniu poprawnego hasła(hasło do programu ma być zapisane w nim) wykona dowolną operację na liczbach. można podać max 3 razy zle hasło po czym program się wyłączy
obecnie mam tylko coś takiego i nie wiem co dalej
uses crt;
var p,u:integer;
begin
clrscr;
write('Podaj haslo')
readln(u);
p:=123456;
p:=u;
if p=u then
else
write('Poprawne hasło')
u - hasło podawane przez użytkownika
p - hasło wpisane w programie
z góry dzięki za pomoc :)
1. p:=u; - po co to?
2. Co znaczy wykona dowolną operacje na liczbach? Ma się wyświetlić jakiś wybór co ma zrobić dalej, czy po prostu po ifie wrzucić jakieś dodawanie?
3. Całość wrzucasz do pętli (np for)
4. Czemu haslo jest integerem a nie stringiem?
Jak chcesz to ci wrzuce w BATchu zrobione
Jakie chcesz mieć hasło ?
loczek wszystko źle bo dopiero się ucze;/
scoo dzieki spoko ale jak wlączyłem to nie wolal hasła;/
btw. dlaczego to nie jest zapisane jako pas? wolalbym jako pas by moc sobie otwierac przez kompilator
edit. w tym drugim pyta o haslo:P
a można prosić w postaci PAS:P?
nie robilem tego w pascalu, tylko w batchu. powinienes uruchamiac program przez ten plik kolo folderu data, nie w data, bo ten pierwszy uruchamia tego drugiego po wpisaniu hasla.moge zrobic tak, zeby tego drugiego pliku nie bylo wogole, bedzie ukryty gdzie indziej i nie bedzie go widac. Moge ci wyslac .bat jako zrodlo, edytujesz go notatnikiem.
Jak chcesz inne haslo to napisz jakie, odesle ci zmienione.
Zrodlo w .bat wysle potem bo teraz jestem na komorce.
może tak:
VAR p,u,i:integer;
BEGIN
p:=123456;
FOR i:=1 TO 3 DO
BEGIN
CLRSCR;
WRITELN('Podaj hasło: ');
READLN(u);
IF u=p THEN break ELSE writeln('Bledne hasło: ');
END;
END;
dorbze jest tak jak zrobil Sc00 ale ja potrzebuje kod zródłowy by zapisać go sobie w pas'ie i żebym mogł odpalić kompilatorem pascala
http://www.speedyshare.com/files/27756655/Dodawanie_BAT.rar
Tu masz w BAT
Po co sobie życie utrudniać, masz w batch, możesz łatwo zmienić bat w exe i już masz gotową aplikację :)
chciałem w pas bo do szkoły to potrzebuje dlatego:(
bat'a mi nie przyjmie
więc sorry patrząc na kod niestety nie pomogłeś :(
muszę się męczyć dalej z tym:(
pewnie, ze pomoglem. Chciales program do dowolnego obliczenia, z haslem, no to masz. To ty decydujesz w czym zrobisz swoja aplikacje, jak nie umiesz w pascalu to zrob w czyms innym, w czym ci pasuje. dla mnie liczy sie efekt, a nie jak to bylo zrobione.
Napisz na jakims specjalistycznym forum programistycznym, a nie na forum o grach.
chciałem w pascalu jak napisałem w tytule!
nie mogę w innym gdyż pascala mam w szkole
Sc00®pY: skoro chce się nauczyć programowania w pascalu (lub wymagają od niego tego w szkole), to po co takie komentarze?
PkSrlz: ciężko dać ci jakieś wskazówki, skoro utknąłeś praktycznie na niczym :)
1. Poczytaj o pętlach i wyrażeniach warunkowych.
2. Na początku, podczas nauki programowania, warto sobie rozrysować algorytm rozwiązania danego problemu, nawet jesli jest on bardzo prosty. Polecam schematy blokowe.
3. Jak skończysz czytać i bedziesz miał problemy, napisz. Bo proszenie o gotowe rozwiązanie nie jest najlepszym sposobem nauki a to o co pytasz, to podstawy podstaw.
zapoznaj się z pierwszym lepszym kursem Pascala bo bez solidnych podstaw daleko nie uciągniesz.
spoiler start
powinno wystarczyć to wkleić do kompilatora. pas'a nie pośle, bo to już szczyt lenistwa.
spoiler stop
spoiler start
USES CRT;
var i: integer;
var p,u,liczba,wynik: real;
BEGIN
p:=123456;
CLRSCR;
FOR i:=1 TO 3 DO
BEGIN
WRITELN('Podaj haslo: ');
READLN(u);
IF u<>p THEN WRITELN('Bledne haslo. Pozostalo prob: ',3-i) ELSE
BEGIN
CLRSCR;
WRITELN('Podaj liczbe: ');
READLN(liczba);
wynik:=sqrt(liczba);
WRITELN('Pierwiastek kwadratowy z liczby ',liczba:0:3,' wynosi: ',wynik:0:3);
READLN;
BREAK;
END;
END;
END.
spoiler stop