Kezdőoldal » Számítástechnika » Programozás » Nem vagyok elég okos, vagy...

Nem vagyok elég okos, vagy csak máshogy gondolkodok (C++)?

Figyelt kérdés

1.) Kérjen be a billentyűzetről egy pozitív egész számot és 1-től a bekért számig adja össze a számok négyzetét! Használjon elöltesztelő ciklust!

2.) Kérjen be egy számot, szorozza meg kettővel és adjon hozzá egyet és az így kapott páratlan számig adja össze a pozitív páratlan számokat! Használjon hátultesztelő ciklust!


1. Ezt ott rontottam el, hogy nem a ciklusszám négyzetével növelgettem az adott összeget, hanem a bekért száméval.

:P

osszeg = osszeg + szam*szam

helyett én:

b_szam (ez a bekért szám változója)

osszeg += b_szam*b_szam


2. Itt megy egyszerűen ott akadtam el, hogy hogy döntsem el, hogy a bekért szám "bekért szám * 2 + 1" akakjának az értékéig levő számok összeadásánál, hogy döntsem el, hogy a szám, ami 0 és a az adott szám között van, páratlan vagy nem...akartam rá írni egy if-es vizsgálatot, próbáltam, de gondoltam, hogy ez valószínűleg nem jó megoldás, így megnéztem a feladatmegoldást...és:

szam = 1 -- ez a ciklusszám

szam = szam + 2 // végül is egyértelmű...+2-vel páratlan marad, így nem kell if-el szórakozni


Aki nem teljesen érti, amit írtam...innen vannak a feladatok:


[link]


Eléggé ledöbbentem magamon...később játékfejlesztéssel szeretnék foglalkozni, de ha már az ilyen egyszerű feladatokat félre értem, rossz logikával dolgozok, vagy túl akarom bonyolítani, akkor nem tudom mi lesz.

Ha valaki tud valamit tanácsolni arra, hogy hogyan fejlesszem a gondolkodás módomat, logikámat, akkor kérem az ne tartsa magában.

A válaszokat, esetleges jó tanácsokat előre is köszönöm.

17/f (évvesztes)


2013. dec. 30. 22:38
 1/10 anonim ***** válasza:
100%

A legjobbakkal is előfordul, hogy olykor elhagynak egy zárójelet/pontosvesszőt figyelmetlenségből. Ne parázz. Mindig olvasd végig a feladatot 2x, figyelve minden részletre, és ezután tervezd meg a programot. Amikor kész vagy a megoldásoddal, olvasd el újra és vesd össze a programoddal. Amúgy, ha ez dolgozatszerűség volt, akkor vizsgadrukk miatt is lehetett, hogy kevésbé fogott az agyad, velem is előfordult már ilyen. :)


24/f

2013. dec. 30. 22:43
Hasznos számodra ez a válasz?
 2/10 anonim ***** válasza:
Programozz sokat, fejleszd magad matekból stb. Én az emelt érettségi programozás részét hihetetlenül túlbonyolítottam és nehéznek éreztem (nem is sikerült jól). Ez másfél éve volt, most programtervező informatika 3. félévében vagyok egyetemen és így visszagondolva...nevetségesen könnyűek azok a feladatok. Az 1 évvel ezelőtti feladatokon is csak nézek, hogy ezt miért nem tudtam akkor megoldani? Saját bőrömön tapasztalom, hogy a logika fejleszthető. Szóval ne aggódj, ha szereted csinálni, akkor folytasd.
2013. dec. 30. 22:46
Hasznos számodra ez a válasz?
 3/10 anonim ***** válasza:
100%

"később játékfejlesztéssel szeretnék foglalkozni"


na kb 99%, hogy ezt elfelejtheted, de nem a feladatok miatt


Az elsőnél szimplán figyelmetlen voltál.

A másodikhoz meg annyit, hogy minden feladatot többféleképpen is megoldhatsz, csak valahogy menjen. Nyilván a ciklusváltozó kettesével léptetése a legegyszerűbb megoldás, de az is jó, ha minden számra megnézed, hogy páratlan-e. Ez utóbbi talán azért jobb, mert ha nem csak szimplán páratlan számokat keresünk, hanem egy xy feltételnek megfelelőket, akkor mondjuk itt jönne képbe egy függvényhívás, és nem lehetne elintézni a dupla léptetéssel. Na mindegy, a te megoldásod feltételében moduloval kellett volna vizsgálni a paritást, eléggé alap dolog.

2013. dec. 30. 22:49
Hasznos számodra ez a válasz?
 4/10 A kérdező kommentje:

#1

Itthon csinálgatom, mivel érdekel, és most itt van a téli szünet is :)

Többször átolvastam...csak szokásom sokszor a dolgokat félreérteni sajna, vagy túlbonyolítani, mint most.

#2

Nem is szándékozom feladni. Ez előtt jó régen már volt próbálgatásom dark basic, python téren, de a Dark Basic-et alig használják, és sokan mondták, hogy tényleg bonyolult programokhoz nem nagyon jó, python-ról is hasonlókat, bár azt leginkább más miatt hagytam abba...a lényeg hogy alapvetően a C++ húzott mindig.

Ha pedig ténylegesen sokat lehet fejleszteni a logikán, akkor meg már azért sem adom fel semmikép (és igen, szeretem csinálni) :)

#3

Értem amit írsz, de nem fogom elfelejteni.

De ha nem a feladatok miatt kéne szerinted, akkor mire értetted konkrétan?

2013. dec. 30. 22:57
 5/10 A kérdező kommentje:

3#

Amúgy a %-operátorral való vizsgálatra gondoltam én is...

2013. dec. 30. 23:00
 6/10 anonim ***** válasza:

Szerintem ez egyéntől is függ. Nekem hamar ráállt az agyam. De sok gyakorlással a kezdeti problémák meg fognak szűnni. Amúgy amikor nem találod a hibát minden ciklusban írasd ki, hogyan változik a szám. Ez sokat segít.


+2 a második feladat még ennél is egyszerűbben megoldható, ha tudod hogyan kell összeadni az első n páratlan számot (kb. 7.-es tananyag). És így a program is sokkal gyorsabb lesz.

2013. dec. 31. 12:14
Hasznos számodra ez a válasz?
 7/10 anonim ***** válasza:

Az elsőnél talán segített volna teszteled a programot, sőt addig hozzá se kezdesz, amíg a teszt eseteket kézzel ki nem számolod.

1->1

2->5

3->14

4->30, elég is ennyi.

Rögtön kiderült volna, hogy rosszul írtad meg a kódot.

Persze, ha már magát a feladatot se értetted meg jól, akkor ez nem segít, de lehet már a számolgatás közben rájöttél volna.

A második példát meg fogd fel úgy, hogy megint tanultál valamit. Sok ilyen lesz még.

2013. dec. 31. 15:19
Hasznos számodra ez a válasz?
 8/10 anonim ***** válasza:
Ezekben az az érdekes, hogy ~1 soros "algoritmusra" kérdez rá, csak bonyolultabban fogalmazza meg. Ha már tudod hogyan kell számokat összeadni, akkor rögtön be fog ugrani hogy hogyan kell az adott feladathoz módosítani a ciklusodat. Ehhez "rutin" kell, oldj meg néhány mintafeladatot és menni fog.
2013. dec. 31. 17:00
Hasznos számodra ez a válasz?
 9/10 anonim ***** válasza:
Hármaska vagyok, lehet félreértetted, hobbiból lehet játékfejlesztéssel foglalkozni, akár többen is, mit tudom én. Viszont nem valószínű, hogy ebből fogsz megélni. És különben is, nem egy ember szokott játékot fejleszteni, szóval szerintem ugyanúgy szoftverfejlesztőnek érzed magad, ha egy játékprojektben veszel rész, mintha valami másban tennéd. Szóval maximum hobbiból érhetsz el olyat, hogy azt mondod, igen, ezt én "csináltam".
2014. jan. 1. 18:17
Hasznos számodra ez a válasz?
 10/10 A kérdező kommentje:

Értem...

Tudom, hogy egy normális játékfejlesztésnél egy egész csapat van, és akkor nincs igazán egyedi siker.

Am akkor lehet én is rosszul fejeztem ki magam.

Igen, hobbiból is akarok majd írogatni valamit.

De munkaként, magán a programozáson belül is a játékprogramozás érdekel, csapatban, mivel egyedül nem nagyon lehetséges. De ha tegyük fel, egy játékfejlesztő csapatba se mennék el dolgozni, akkor is programozással, vagy legalább informatikával fogok foglalkozni.

2014. jan. 1. 21:40

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!