Mam problem z pewnym zadaniem z zaliczenia. Zadanie w skrócie brzmiało by dany ciąg liczb całkowitych zapisanych w tablicy sprawdzić funkcjami czy jest rosnący, ile jest liczb jednocześnie parzystych, podzielnych przez 3 i dwucyfrowych, oraz zsumować pierwszy i ostatni element ciągu. Mój kod wygląda tak:
#include <iostream>
using namespace std;
int suma (int tab[], int ile)
{
//suma pierwszego i ostatniego elementu
int suma1 = 0;
int i;
for (i=0; i<ile; i++)
{
suma1 = tab[0] + tab[i-1];
tab++;
}
return suma1;
}
int warunek (int tab[], int ile)
{
//sprawdzenie ile el. jest parzystych, dwucyfrowych i podzielnych przez 3
int warunek1 = true;
int i;
for (i=0; i<ile;i++)
{
if (tab[i]%2!=0 && tab[i]%3!=0 && tab[i]<9)
{
//cout << tab[i];
warunek1=false;
ile++;
}
}
if(!warunek1)
cout << "brak elementow spelniajacych kryteria";
else
cout << "liczba elementow parzystych, dwucyfrowych oraz podzielnych przez 3: "<< tab[i];
}
int jakiCiag(int tab[], int ile)
{
//sprawdzenie czy ciag malejacy, rosnacy czy inny
int i;
bool rosnacy=true;
bool malejacy=true;
//sprawdzanie czy rosnacy
for(i=0; i<(ile-1); i++)
{
if (tab[i]>tab[i+1])
{
rosnacy=false;
break;
}
}
//czy malejacy
for(i=0; i<(ile-1); i++)
{
if (tab[i]<tab[i+1])
{
malejacy=false;
break;
}
}
//wypisanie jaki ciag
if (rosnacy)
{
cout << "ciag jest rosnacy";
}
else if (malejacy)
{
cout << "ciag jest malejacy";
}
else
cout << "ciag jest inny";
//return jakiCiag(malejacy || rosnacy);
}
int main()
{
//pytanie o ilosc elementow ciagu
int i, ile;
do
{
cout<<"podaj ilosc elementow ? : ";
cin>>ile;
if (ile<=0)
{
cout<<"Podales nieprawidlowa wartosc!"<<endl;
}
}
while(ile<=0);
//deklaracja i uzupelnienie tablicy ciagu
int tab[ile];
for (i=0; i<ile; i++)
{
cout << "wprowadz " << i+1 <<" element tablicy: " << endl;
cin >> tab[i];
}
//wyswietlanie informacji
cout << jakiCiag(tab,ile)<<endl;
cout << "suma pierwszego i ostatniego elementu to:" << suma(tab, ile) << endl;
cout << warunek(tab, ile) << endl;
return 0;
}
a wynik wygląda tak:

czy może mnie ktoś oświecić co jest źle ? przecież liczby całkowite to int więc dlaczego wynik sumowania jest jakiś dziwny ? Męczę to już 2 dzień, był mały progress ale się skończyły pomysły