Mit rontok el a programban?
Feladat: 2 bekért szám legnagyobb közös osztója.
A probléma hogy a while ciklus végig sem fut egyszer. Nem csinál semmit a 2 bekért számmal, gondolom rosszul írom le hogy mi szerint adja meg az értékeket, melyik változónak.
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <cmath>
#include <math.h>
#include <time.h>
#include <cstdlib>
using namespace std;
int main()
{
int a, b, m=0;
cout<<"Adja meg az elso szamot: "; cin>> a;
cout<<"Adja meg a masodik szamot: "; cin>> b;
if(b>a)
{
m=a;
a=b;
b=m;
}
m=0;
while(m!=0)
{
m=(a)%(b);
a=b;
b=m;
}
cout<<"A legnagyobb kozos oszto: "<<m;
return 0;
}
Azért az includeokkal elég biztosra mentél.
Még szerencse, hogy érted, hogy mire jók.
"A C++-ben sok olyan dolog van ami a többi nyelvben nincs."
Minden nyelvben sok olyan dolog, ami a több nyelvben nincs, ezért különbözőek a nyelvek, különben nem lenne túl sok értelme.
"Ezért is kell vele vigyázni, és kerülne ezek használatát."
Miknek a használatát?
Amik C++ specifikusak? Ez meg a legnagyobb baromság a világon.
Az ember azért ír egy programot C++-ban, hogy kihasználja a C++ előnyeit, nyelvi elemeit.
"Legtriviálisabb példa a continue, break. Ezek használata nélkül is eltudod írni ugyanazt az eredményt."
Persze. Habár ezek sokszor tudnak növelni a hatékonyságon, kb ezért szeretjük a C++-t.
"Csak nem mindegy hogyha átakarsz írni egy programot egy másik nyelvre, akkor minden ilyet újra kell-e csinálnod vagy sem."
Minek írnád el másik nyelvre? És eleve, ha átírod, mindent át kell írnod, innentől kezdve meg nem sok értelme van, pont a hasznos dolgokat kihagyni.
Amit te mondasz az kb az, hogy veszel egy autót, de aztán kézzel tolod hátulról, mert lehet, hogy az autó benzinnel működik, de a legtöbb jármű nem, és ha véletlenül át kell pattannod biciklire, akkor milyen jó, hogy az autót sem benzinnel hajtottad, mert a biciklit tekerni kell.
Marhaság.
Valamint a végére: ez nem programozás. Ez egy iszonyú nagy dolog felszínének a körömheggyel megpöccintése.
A programozás igenis nehéz, jó logikát, absztrakciós készséget és nagyon nagyon nagyon sok tanulást igényel.
Mindenezek mellett persze szórakoztató és izgalmas is.
Ezt tanárom mondtam aki rohadt sokáig volt programozó, számos helyen, számos nagyobb cégnél is. Gondolom nem csak poénból mond ilyeneket. Látszik rajta hogy ért hozzá, ezzel foglalkozott nagyon sokáig, már már olyan dolgokat is elvár amit soha életünkben nem hallottunk.
Biztosra mentem includeokkal. Egyszerűbb lementeni ilyen kis programokat jegyzettömbbe kimásolva mintsem mentsek le 1000 project fáljt, meg hozzam újra mindig. Van egy projectem, azt nyitom meg és írok bele mindig. Ezzekkel az includeokkal van az lementve, nem törölgetem ki mert ezeket használjuk most és fölösleges lenne. De ha bántja a szemed akkor majd máskor csak olyat teszek bele ami kell is :)
"Ezt tanárom mondtam aki rohadt sokáig volt programozó, számos helyen, számos nagyobb cégnél is."
Akkor eléggé átverhetett titeket, vagy csak félreértettétek amit mond.
Szerintem ő inkább a nem strukturális elemekre gondolt a continue és a break alatt.
Ebben valóban van valami, de ez is túlzás.
"Látszik rajta hogy ért hozzá, ezzel foglalkozott nagyon sokáig, már már olyan dolgokat is elvár amit soha életünkben nem hallottunk."
Ez szintén inkább a nem hozzáértés tünete.
"Biztosra mentem includeokkal. Egyszerűbb lementeni ilyen kis programokat jegyzettömbbe kimásolva mintsem mentsek le 1000 project fáljt, meg hozzam újra mindig. Van egy projectem, azt nyitom meg és írok bele mindig. Ezzekkel az includeokkal van az lementve, nem törölgetem ki mert ezeket használjuk most és fölösleges lenne. De ha bántja a szemed akkor majd máskor csak olyat teszek bele ami kell is :)"
Na most egy ilyen egyszerű programnál kb két sort kell beírni minden egyes új feladathoz.
Nem nagy ördöngősség.
Ezen kívül pl a #include <cmath> és #include <math.h> együtt akkor is marhaság, akármennyire is lusta vagy.
Na, ezen is jót kacagtam. Már ne is haragudj kedves kérdező, de látszik, hogy fingod sincs a C++-ról, de a programozásról úgy általánosan. Amiket leírtál 99%-ban akkora marhaságok, hogy a legtöbb gólya kiröhögne akármelyik programozói karon. Igaz a régi hagyományos BASIC-ben nem sokat programoztam, azok is csak kíváncsiságból, de hogy Pascalban, de még Visual Basicben is van olyan parancs, amivel meg tudod szakítani egy függvény/metódus futását az biztos. És ez nem véletlen. A legtöbb esetben nagyon hasznos dolog.
A másik amin igencsak virultam az a tanárod istenítése. Most komolyan, ha olyan jó szakember lenne akkor miért nem maradt a "nagy cégeknél"? Nekem ne mondja senki, hogy a tanári fizetés vonzóbb, mint az amit ténylegesen programozóként keresne. Egyébként az, hogy olyat vár el tőletek amiről még nem is hallottatok, nem csak azt árulja el, hogy rossz tanár, de azt is, hogy rossz szakember is.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!