Programowanie C++:
Program ma czytać z klawy liczbę naturalną n, a następnie sprawdzić ILE kolejnych liczb naturalnych od 1 trzeba zsumować aby ta suma przekroczyła podane n.

int ile, licznik;
licznik=0;
ile=0;
for(i=i;i<1000;i++) //rozpoczyna się od 1 i aż do 1000 rośnie po jeden
{ //rozpoczęcie for
if(ile<n)
{
ile=ile+i;
}
else if(ile>n)
{
cout<<" Ile? Tyle: "<<licznik<<"\n Albowiem "<<ile<<" jest większe od "<<n;
}
licznik++; //co obrót zwiększamy licznik o 1 punkt, czyli tak jakby o kolejną liczbę, jaka potrzebna jest...
} //zakończenie for

Problem w tym, że mam jakieś błędy i się nie chce kompilować. Proszę o pomoc :)

1

Odpowiedzi

Najlepsza Odpowiedź!
2009-12-11T20:03:05+01:00
Pomijając fakt, że Twój program jest nie poprawny logicznie - dawał by zły wynik, a metoda jest troszkę nie optymalna, przeanalizuj to:
#include <iostream>
using namespace std;

int main()
{
int ile, licznik,n;
cin>>n;
ile=0;
for(licznik=1;ile<n;licznik++)
{
ile=ile+licznik;
cout<<"<"<<ile<<">";
}
cout<<" Ile? Tyle: "<<licznik-1<<"\n Albowiem "<<ile<<" jest większe od "<<n;
system("pause");
}