Monotoniczność ciągu

0

Mam za zadanie zbadać monotoniczność określonej ilości ciągów nieujemnych liczb. Koniec ciągu sygnalizuje wpisanie ujemnej liczby. ( z tą częścią sobie poradziłem) Monotoniczności do wyboru to: stały/rosnący/malejący/nierosnący (jeśli każdy kolejny wyraz jest nie mniejszy od poprzedniego, a ciąg nie jest ani stały, ani malejący) /niemalejący (analogicznie) /nieokreślony. Dodam, że nie mogę używać tablic, z resztą tutaj nie byłoby to wskazane, bo ilość wyrazów ciągów nie jest określona.

Potrzebowałbym waszej pomocy, jakiejś wskazówki, jak to ugryźć ;)

Moje próby tutaj:

 #include <iostream>

using namespace std;

int main(){
	int b;
	int i=0; //ilosc
	int max=0;
	int x=0;
	
	cin >> i;
	while(i>0){
		do{
			cin >> b;
			if(b>max){
				max=b;
			}
			if(b<max){
				x=1;
			}
		}
		while(b>=0);
		
		if(b>0){
			
		}
		else if(b<0){
			cout << "rosnacy";
		}
		i--;
	}
	return 0;
}

Niestety to sprawdzi tylko jedną opcję :/

2

Pseudokod:

bool rosnacy = true, malejacy = true, nierosnacy = true, niemalejacy = true;

while (wczytujemy)
{
    if (nowa_liczba == poprzednia_liczba)
        rosnacy = malejacy = false;
    
    if (nowa_liczba > poprzednia_liczba)
        malejacy = nierosnacy = false;

    if (nowa_liczba < poprzednia_liczba)
        rosnacy = niemalejacy = false;
}

if (rosnacy) 
    cout << "Rosnacy" << endl;
if (malejacy) 
    cout << "Malejacy" << endl;
if (nierosnacy)
    cout << "Nierosnacy" << endl;
if (niemalejacy)
    cout << "Niemalejacy" << endl;
0

Jak zdeklarować nową zmienną, nie zapominając starej?

2
int poprzednia_liczba, nowa_liczba;
cin >> poprzednia_liczba;
while (true)
{
    cin >> nowa_liczba;
    if (nowa_liczba == -1)
        break;

    ......                      // logika opisana wyzej

    poprzednia_liczba = nowa_liczba;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1