Számok összehasonlítása Java nyelvben?
Amit írtam, az csak azt mondja meg van-e három egyforma szám a tömbben. Ha a visszatérési értéke a függvénynek igaz, akkor kell egy másik ciklus ami végigmegy a tömbön és megnézi, hogy van-e olyan eset amikor három egyforma szám jön egymás után. Itt a visszatérési érték alapesetben igaz, tehát megfelel a feltételnek, nem követi egymást három egyforma szám, de ha a ciklusban kiderül, hogy van akkor átállítjuk hamisra és kilépünk.
#include <cstdlib>
#include <iostream>
using namespace std;
int tomb[10] = {1,1,0,1,2,3,4,5,6,7};
int van_e_harom();
int jo_e();
int main()
{
if (van_e_harom()) cout << "Van harom egyforma\n";
if (jo_e()) cout << "Megfelelo\n" ;
else
cout << "Nem megfelelo\n" ;
getchar();
return 0;
}
int van_e_harom(){
int van_e = 0;
int n = 1;
for (int i = 0; i < 9; i++){
n = 1;
for (int j = i + 1; j < 10; j++)
if (tomb[i] == tomb[j]) n++;
if ( n > 2) van_e = 1;
}
return van_e;
}
int jo_e(){
int jo = 1;
if (van_e_harom()){
for (int i = 0; i < 8; i++)
if ((tomb[i] == tomb[i + 1]) && (tomb[i] == tomb[i + 2])) jo = 0;
}
return jo;
}
Így jó a függvény, bocsi, kimaradt az else ág.
int jo_e(){
int jo = 1;
if (van_e_harom()){
for (int i = 0; i < 8; i++)
if ((tomb[i] == tomb[i + 1]) && (tomb[i] == tomb[i + 2])) jo = 0;
}
else
return 0;
return jo;
}
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!