Cześć,
mam zadanie następującej treści:
"Napisz program pobierający od użytkownika dwie liczby całkowite stanowiące krańce pewnego przedziału domkniętego, a następnie wypisujący ilość i sumę liczb podzielnych przez 3 należących do tego przedziału, a także wszystkie te liczby w kolejności malejącej."*
Chodzi o to by nie używać tablic ani innych struktur danych, które mogłyby je przechowywać.**
Wszystko super spoko, tylko to wypisanie liczb w kolejności malejącej..
Mój kod:
#include<iostream>
#include<limits>
using namespace std;
int main()
{
int a , b, liczba_prob = 0, ile_liczb = 0, suma = 0, max = numeric_limits<int>::min();
bool czy_byly_liczby;
do
{
cout << "Podaj krance przedzialu domknietego. \nLewy - a, prawy - b.\na = ";
cin >> a;
cout << "b = ";
cin >> b;
if (a>b)
{
cout << "a > b, wiec przedzial nie istnieje!" << endl;
liczba_prob++;
cout << "Pozostalo Ci: "<< 5-liczba_prob << " prob(a/y)."<< endl;
}
else if (a == b)
{
cout << "a == b, wiec przedzial jest zdegenerowany!" << endl;
liczba_prob ++;
cout << "Pozostalo Ci: "<< 5-liczba_prob << "prob."<< endl;
}
else
break;
}
while(liczba_prob != 5);
if (liczba_prob >= 5)
cout << "Liczba dopuszczalnych prob wynosila 5! Nie masz wiecej prob!!";
for (int i = a; i <= b ; i++)
{
if (i % 3 == 0)
{
ile_liczb ++;
suma = suma + i;
czy_byly_liczby = true;
if (i > max)
max = i;
}
else
czy_byly_liczby = false;
}
if (czy_byly_liczby == true)
cout << "nawjwieksza z liczb podzielnych przez 3 w tym przedziale, to: "
<< max << endl;
cout << "W przedziale a = " << a << ", b = " << b <<" jest " << ile_liczb
<< " liczb podzielnych przez 3. Ich suma wynosi: " << suma << "." << endl;
return 0;
}
Proszę o podpowiedź/naprowadzenie.
Brakuje mi czegoś, co by "zapamiętywało" te wybrane liczby (podzielne przez 3), a nie mogę mieć zmiennej na każdą taką liczbę, bo raz nie wiem z góry ile takich liczb będzie, dwa, nawet jakbym wiedział, to bez sensu tworzyć miliony zmiennych na to samo.
* Ja sobie zmodyfikowałem treść, żeby użytkownik mógł max 5 razy wpisać [a;b] aż przedział będzie sensowy.
** Zadanie ma nacisk na to, że ma być bez tablic - to nie są moje "widzimisię" ;)