Ezzel igy van valami baj?
void feladat_3()
{
int max = 0;
for (std::size_t i = 0; i < 3; ++i)
{
int temp;
std::cin >> temp;
if(!i || temp > max)
{
max = temp;
}
}
std::cout << "Maximum: " << max << '\n';
}
void feladat_4()
{
std::multiset<int> ms;
for (std::size_t i = 0; i < 4; ++i)
{
int temp;
std::cin >> temp;
ms.emplace(temp);
}
std::cout << "Novekvo sorrendbe: ";
for (const auto& i : ms)
{
std::cout << i << ", ";
}
}
int main(int argc, char** argv)
{
feladat_3();
feladat_4();
}
Lefordul vagy sem?
Azt csinálja, amit kell, vagy nem?
A teljesség igénye nélkül (mivel kezdő feladatokról van szó, nem mennék mélyen bele a topicba),
int max = 0; <- Kerüld az olyan azonosítók használatát, amelyek ütközhetnek RTL/3rdP azonosítókkal.
for (std::size_t i = 0; i < 3; ++i) { <- Az a 3-as varázsszám. Kerüld. Miért 3? Mit jelent az a 3? Honnan jött? Nem hordoz elég információt, használj helyette konstanst (vagy konfigból/parancssorból feltöltött változót), amelynek a neve elárulja a célját. Ugyanez vonatkozik a másik feladat for ciklusára is.
if(!i <- Ezt gyorsan felejtsd el. Az i nem boolean, úgyhogy ne használd úgy, mintha az volna. Tessék szépen kiírni, hogy "i == 0"! Egyébként az sem teljesen tiszta, miért kell feltétlenül size_t-nek lennie.
std::multiset<int> ms; <- ne használj rövidítéseket. legyen ránézésre azonnal olvasható, mi az adott változó feladata.
std::cout << "Novekvo sorrendbe: "; <- ez technikailag rendben van, a magyar helyesírási szabályoknak viszont nem felel meg :)
for (const auto& i : ms) { <- És az utolsó elem után is kerül egy vessző. Nem érdemes erőltetni az iteratort.
"feladat_N" <- Hacsak nem a feladat kötelező érvényű része, javaslom, kerüld a magyar azonosítók használatát.
Az első feladatot szebben is megoldhattad volna, ha a csúnyácska beágyazott if helyett std::max -ot használsz - és még beszédesebb is :)
Van némi duplikáció a két feladat megoldása közt. Lehet, hogy érdemes volna megszüntetni valahogyan.
Plusz egy problémának érzem, hogy nem OO, de mivel kezdő feladatokról beszélünk... :)
Sok sikert!
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!