Jump to content
GSForum - Segélyvonal

Programozás (segítség és publikálás kezdõknek)


Recommended Posts

Posted

na már 5 órája itt rohadok a pascal kék képernyõje elõtt úgyh most nincs erõm értelmezni amit írtál, de köszi, majd holnap megtanulmányozom.

kicsit javítgattam a saját megoldásomon, berakom ide is:

   b := 0;
   for i:=1 to tombmax do
   Begin
     a[i] := random(251)-100;
     Write(a[i]:szamhossz,' ');
     inc(b);
     IF b=int(80/szamhossz) THEN
             Begin
             WriteLn;
             b := 0;
             End;
    End;

tehát van egy szamhossz nevû konstans, amit a deklarációs résznél tudok szerkeszteni, amit ha elosztok 80-nal (ilyen széles pixelben vagy karakterben a pascal képernyõ ugye) megkapom hány szám fér ki egy sorba. én esetemben 3 jegyû számok vannak, opcionálisan elõjellel, tehát a szamhossz nevû konstans 4 lett. a "b" változó kezdetben 0, ciklus i-jével 1ütt növekszik, ha eléri az egy sorba max kiférõ számok számát, új sort kezd a program és "b"-t visszaállítja 0-ra h újrakezdõdjön az ellenõrzés új sorért.

Posted

na már 5 órája itt rohadok a pascal kék képernyõje elõtt úgyh most nincs erõm értelmezni amit írtál, de köszi, majd holnap megtanulmányozom.

kicsit javítgattam a saját megoldásomon, berakom ide is:

   b := 0;
   for i:=1 to tombmax do
   Begin
     a[i] := random(251)-100;
     Write(a[i]:szamhossz,' ');
     inc(b);
     IF b=int(80/szamhossz) THEN
             Begin
             WriteLn;
             b := 0;
             End;
    End;

tehát van egy szamhossz nevû konstans, amit a deklarációs résznél tudok szerkeszteni, amit ha elosztok 80-nal (ilyen széles pixelben vagy karakterben a pascal képernyõ ugye) megkapom hány szám fér ki egy sorba. én esetemben 3 jegyû számok vannak, opcionálisan elõjellel, tehát a szamhossz nevû konstans 4 lett. a "b" változó kezdetben 0, ciklus i-jével 1ütt növekszik, ha eléri az egy sorba max kiférõ számok számát, új sort kezd a program és "b"-t visszaállítja 0-ra h újrakezdõdjön az ellenõrzés új sorért.

Ez ott van bukón, hogy szamhossz+1 karaktert ír ki write-onként, ugye, a space-ek miatt. Az a megoldás jó, amit Flame írt. Ez is jó lenne, kis átalakítással, viszont én is kb. 4 éve programoztam utoljára pascalban, szóval kódot nem írnék, ha nem muszáj. :P

Posted

suliban lévõ free pascal magától új sort kezd sor vége után. érdekes.

Posted

Hali !

Excel programozásához valamint visual basic-hez keresek könyvet. Tudtok valamit ajánlani. Esetleg ebook-ot ?

Esetleg ingyenes ?

köszi

tomi

Flame_of_Aiur
Posted

suliban lévõ free pascal magától új sort kezd sor vége után. érdekes.

Mindegyik, de mi van, ha marad a sorban 1 karakternyi hely, és oda akar egy 3 számjegyû cuccot írni? Szétszedi a számot kétfelé. Naugye, h szükség van az intelligens soremelésre.

Posted

Mindegyik, de mi van, ha marad a sorban 1 karakternyi hely, és oda akar egy 3 számjegyû cuccot írni? Szétszedi a számot kétfelé. Naugye, h szükség van az intelligens soremelésre.

hát ugyanaz a kód az itthoni pascal-ban nem emel sort ami a suliban igen.

Flame_of_Aiur
Posted

hát ugyanaz a kód az itthoni pascal-ban nem emel sort ami a suliban igen.

No, akkor mégse mind :D Én ahány fordítót láttam mind új sorba írt tovább, ha elfogyott az, amiben addig volt.

Mellesleg én ettõl kapok iszonyatosan hülyét, amikor itthon hibátlan a kód, aztán mehetek be egyetemi gépekre átszabni a kódot egész délután, hogy másnap leforduljon egyáltalán... szerencsére legalább a java ugyanúgy fut bent is mint itthon, azzal nem szopok. Mindezt úgy, hogy egyáltalán nem hw-specifikusan csinálom meg :unsure: Meh luv... programming haz dem.

Posted

de ez mitõl van? suliban és itthon is free pascal van, annyi h nekem 1 újabb verzió. beállítás kérdése?

Posted

No, akkor mégse mind :D Én ahány fordítót láttam mind új sorba írt tovább, ha elfogyott az, amiben addig volt.

Mellesleg én ettõl kapok iszonyatosan hülyét, amikor itthon hibátlan a kód, aztán mehetek be egyetemi gépekre átszabni a kódot egész délután, hogy másnap leforduljon egyáltalán... szerencsére legalább a java ugyanúgy fut bent is mint itthon, azzal nem szopok. Mindezt úgy, hogy egyáltalán nem hw-specifikusan csinálom meg :unsure: Meh luv... programming haz dem.

Az nem a fordító miatt van, hanem a futtatási környezettõl (op.rendszer, shell, cmd beállítások)

Posted

de ez mitõl van? suliban és itthon is free pascal van, annyi h nekem 1 újabb verzió. beállítás kérdése?

Lehetséges. Valószínûleg a konzol ablak nem tud mit kezdeni a hosszú sorokkal.

Posted

Van jobb megoldás. Az eredeti kódodba egyetlen sort kell csak betenni csupán, de mivel utoljára kb. 4-5 éve írtam pascal programot, így kb. tuti nem jó :)

   
for i:=1 to tombmax do
   Begin

      if ( mod(i,10) = 0 ) then writeln('');
      write(a[i],' ');
      inc(i);
   End;

Ez annyit akar csinálni, hogy ha az i 10-el való osztásának maradéka 0, akkor egy üres karaktert kirak sortöréssel - ergó simán sort tör, na. Igény szerint 10 helyett lehet valami más számot, illetve a modulo parancs nem emlékszem már, h így van-e, pascal könyvben meg kéne nézni :unsure: Illetve ebben van egy "Inc(i)", ami növeli az i értékét 1-el. Ha jól emlékszem a Pascal önmagától ezt nem teszi, és ha elfelejted, akkor végtelen ciklusod lett, ctrl-break ftw!

Gusztusosabb megoldás, ha az ember tudja, h mondjuk max 4 jegyûek azok a számok, akkor két egymásba ágyazott for ciklussal és "goto( 1 + i* 5 , 1 + j * 2 )" parancsal a kiírás elõtt egyfajta táblázatba rendezi. (Szintén lehet, h nem jól emlékszem a goto paraméterezésére, lehet meg kell cserélni.) j a külsõ for cikulus változója, 0-tól megy addig, ahány 4 + 1 (innen az 5-ös) karakteres cella elfér 1 sorban (õ jelzi az oszlopot), i meg simán azt mondja meg hanyadik sor, nullától fut... hátõ, inkább a külsõ legyen egy while ciklus egy boolean változóval kilépési feltételként. Kezdõértéke true ha elöl tesztelsz, false ha hátul, minden kiírás elõtt meg kell nézni, h amit ki akarsz írni, az tombmax-1 -nél kisebb-e. Ha igen, akkor mehet, ha nem akkor legyen egyenlõ önmaga tagadása és akkor ez volt az ucsó szám amit kiírtál. Ilyenkor i-t minden kiírás után növelni kell 1-el, j-t viszont csak ha sorvége volt, tehát a belsõ cikluson kívül, de a külsõn belül. Mondjuk rögtön a belsõ ciklus end-je után. Kiíratni meg ezt kell: "a", ahol X az egy sorba kiférõ számok száma ugye.

Ezzel mondjuk csak az a baj, hogy ha okosítani akarod, akkor már picit szenvedni kell. Pl. mi van, ha egy oldalra nem fér ki? Esetleg ezek között lapozni is akarok két gombbal oda-vissza, esetleg más gombot el se fogadjon, csak azt a kettõt meg egy másikat, amivel kilépni lehet? Illetve azt, hogy hány karakter hosszú legyen 1-1 cella, azt is okos dolog lehet a tömb legnagyobb számához igazítani (és eltárolni egy oszlopszam nevû változóban mondjuk), amit meg kell keresni, meg kell tudni hány karakteres (stringgé konvertálás, aztán length, vagy sok if-el kisakkozni a helyiértékét) és akkor oszlopszam-ig fut a belsõ ciklus, stb.

Ha emlékeim nem csalnak, akkor helyesen (i mod 10) = 0 a feltétel.

Amire te gondolsz, az a gotoxy, a goto utasítás a programkódon belüli ugrásra szolgál.

Posted

HElosztok!

Az lenne a kérdésem h nem tudja e valaki h az exit(-1) re mé nme kakar kilépni a progim házira knlée megcsinlani de sehogy sem akkar mükszeni :blink: Nem vágom h mi lehet a gond amugy gcc be irom a progit!

Itt a forráskód: (ha vlaki tud pls segítsen)!

#include "ctime"

#include "iostream"

#include "cstdlib"

using namespace std;

void main()

{

char v;

do{

cout<< "\n -a alma";

cout<< "\n -b barack";

cout<< "\n -(esc) kilepes \n";

v=getch();}

while ((v!='a')&&(v!='b')&&(v!=27));

switch (v)

{

case 27: esc(-1); break;

case 'a': cout <<"\nhamozva";

cout <<"\nmagozva";

cout <<"\nlekvar"; break;

case 'b': break;

default: cout <<"\ILye menü nicns";

}}

Posted

Ennek ess neki mégegyszer! Teli van hibával és értelmetlen/felesleges dolgokkal.

Posted

Ennek ess neki mégegyszer! Teli van hibával és értelmetlen/felesleges dolgokkal.

lehet az lessz meg sok helyen nem ismeri fel a cout ot sok forditónál pl a Borlandnál.... <_<

Posted

Üdv!

Van egy olyan házim Pascal-ból, hogy írni kéne egy olyan progit, ami bekér a felhasználótól egy szöveget és meg kell számolni, hogy a szövegben hány "a" betû van. :blink: Már egy ideje szívok vele de csak idáig jutok vele:

program abetuk;
uses crt;
type tomb=array[1..50] of char;
var t:tomb;
     a:char;
     i:integer;
begin
write('Írj be valamit: ');
readln(a);
i:=0;

És akkor arra gondoltam, hogy valami repeat vagy do.. while ciklussal annyival kéne növelni kéne az i értékét ahány a betût talál a szövegben a progi. De most innentõl el vagyok veszve... :ph34r:

Meg tök véletlen nincs meg valakinek a 10 próbaérettségi informatikából című könyv? :unsure:

Posted

Üdv!

Van egy olyan házim Pascal-ból, hogy írni kéne egy olyan progit, ami bekér a felhasználótól egy szöveget és meg kell számolni, hogy a szövegben hány "a" betû van. :blink: Már egy ideje szívok vele de csak idáig jutok vele:

program abetuk;
uses crt;
type tomb=array[1..50] of char;
var t:tomb;
     a:char;
     i:integer;
begin
write('Írj be valamit: ');
readln(a);
i:=0;

És akkor arra gondoltam, hogy valami repeat vagy do.. while ciklussal annyival kéne növelni kéne az i értékét ahány a betût talál a szövegben a progi. De most innentõl el vagyok veszve... :ph34r:

Meg tök véletlen nincs meg valakinek a 10 próbaérettségi informatikából címû könyv? :unsure:

Mivel pascalhoz soha nem volt szerencsém így csak az elvét tudom elmondani:

Határozd meg a beadott szöveg hosszá (Lentgh(string) ha jól olvastam).

Ha meg van akkor csinálj egy ciklust 0-tól a beadott elemek hosszáig.

Ezen belül az egyes elemkre a[k]-ként tudsz utalni. (k a cikluson belüli változó) Ha a[k] == 'a' akkor i értéket növled eggyel (i++).

Majd írasd ki az eredményt :) .

Valami ilyesmi lesz... nekem egész életemben csak c nyelvekhez volt közöm :) .

Szerk: megvan a könyv... mondjuk nem tudom, hogy emelt-e vagy sem. Én érettségihez nem sokat használtam. Sokkal hasznosabb a korábbi érettségiket megcsinálni.

Posted

Mivel pascalhoz soha nem volt szerencsém így csak az elvét tudom elmondani:

Határozd meg a beadott szöveg hosszá (Lentgh(string) ha jól olvastam).

Ha meg van akkor csinálj egy ciklust 0-tól a beadott elemek hosszáig.

Ezen belül az egyes elemkre a[k]-ként tudsz utalni. (k a cikluson belüli változó) Ha a[k] == 'a' akkor i értéket növled eggyel (i++).

Majd írasd ki az eredményt :) .

Valami ilyesmi lesz... nekem egész életemben csak c nyelvekhez volt közöm :) .

Szerk: megvan a könyv... mondjuk nem tudom, hogy emelt-e vagy sem. Én érettségihez nem sokat használtam. Sokkal hasznosabb a korábbi érettségiket megcsinálni.

Már sikerült orvosolnom a problémát, de köszi a segítséget. T'od eleinte elképzelésem nem volt, hogy hogy kéne csinálni :D

Am. megnéznéd nekem, hogy emelt vagy közép-e mert nagyon kéne belõle a 2. és a 3. feladatsor mert szájba leszek rúgva :ph34r:

Posted

Már sikerült orvosolnom a problémát, de köszi a segítséget. T'od eleinte elképzelésem nem volt, hogy hogy kéne csinálni :D

Am. megnéznéd nekem, hogy emelt vagy közép-e mert nagyon kéne belõle a 2. és a 3. feladatsor mert szájba leszek rúgva :ph34r:

középszint

Posted

középszint

Jól van tárgytalan... Anyámat ugrasztottam, hogy ugyan vegye már meg... B)

Posted

Jól van tárgytalan... Anyámat ugrasztottam, hogy ugyan vegye már meg... B)

Fölösleges volt... Az elõzõ évek feladatsorai (és asszem' a hozzá tartozó megoldások is) letölthetõek az OM honlapjáról, aki azokat meg tudja csinálni (aki látta már a Microsoft irodai programcsomagját mûködés közben az tutira meg tudja; aki picit gyakorlottabb az meg megcsinálja fél óra alatt) annak semmi gondja nem lehet.

Posted

Fölösleges volt... Az elõzõ évek feladatsorai (és asszem' a hozzá tartozó megoldások is) letölthetõek az OM honlapjáról, aki azokat meg tudja csinálni (aki látta már a Microsoft irodai programcsomagját mûködés közben az tutira meg tudja; aki picit gyakorlottabb az meg megcsinálja fél óra alatt) annak semmi gondja nem lehet.

Igen... Te errõl beszélsz:

IPB Image

Posted

Nem! Én ERRÕL beszélek. Itt megvan szépen minden, az akkor kiosztott feladatlap .pdf formátumban, értékelési útmutató (ez alapján magadnak is le tudod pontozni, s megnézni, hogy kb milyen szinten vagy) és a megoldások fájljai.

Ingyen és bérmentve, mindenféle regisztráció nélkül.

Aki ezek segítségével nem tud felkészülni az érettségire, az komolyan gondolkodjon el, hogy egyáltalán akar-e ebbõl a tárgyból érettségizni...

Posted

hali, problémám akadt a Flash-el. AS3.0-at használok(pontosabban használnék, ha tudnám :D ) Szóval.

Egy Hidden Object-et akarok csinálni, de már az elején megakadtam.. Hogy tudom azt megcsinálni, hogy ha adva van egy érték egy mc-nek(1), és rákattintok, akkor eltûnjön, és hozzáadjon/kivonjon 1-et egy másik változóból? Egy "régi" játékomat akarom átírni Flash-re, de már az elején problémákba ütköztem, és nem találtam megoldásra eddig :unsure: Olyan oldalt nem tudtok mondani, ahol találok az alapoktól tutoriálokat? Ami az swf.hu-n van, nekem elég hasztalannak tûnik, legalább 50 segédletet néztem eddig át, de nem vagyok sokkal okosabb. Elõre is köszi

Posted

Sziasztok!

Van egy "kis" problémám a Tubo Pascalban való programozással (kezdõ vagyok).

Azt a feladatot kaptam, hogy: Egy háromszög oldalai alapján a program döntse el, hogy szerkeszthetõ-e, ha igen akkor mondja meg mennyi a kerülete. Nekem ez ment, de valami miatt a programom akkor is kiírja a háromszög kerületét, ha az nem szerkeszthetõ. Akinek van gyakorlata az legyen szíves segítsen nekem.

Ide töltöttem fel a programomat:

http://rapidshare.com/files/179009222/HAROM.PAS.html

És itt egy kép róla:

http://rapidshare.com/files/179012293/N_vtelen_1.png.html

Posted

Sziasztok!

Van egy "kis" problémám a Tubo Pascalban való programozással (kezdõ vagyok).

Azt a feladatot kaptam, hogy: Egy háromszög oldalai alapján a program döntse el, hogy szerkeszthetõ-e, ha igen akkor mondja meg mennyi a kerülete. Nekem ez ment, de valami miatt a programom akkor is kiírja a háromszög kerületét, ha az nem szerkeszthetõ. Akinek van gyakorlata az legyen szíves segítsen nekem.

Ide töltöttem fel a programomat:

http://rapidshare.com/files/179009222/HAROM.PAS.html

És itt egy kép róla:

http://rapidshare.com/files/179012293/N_vtelen_1.png.html

Miért nem lehet a forráskódot egyszerûen bemásolni ide? :blink:

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...