Dany jest ciąg n dowolnych liczb naturalnych. Obliczyć liczbę elementów tego ciągu, którego element jest mniejszy od elementu poprzedniego.
A po polsku? Chcesz policzyć długość najdłuższego podciągu rosnącego (niemalejącego?)?
Nie, jemu chyba chodzi o to, żeby zliczyć elementy o wartości mniejszej, niż jakaś zadana.
Chodzi o to, że jak podasz np. 6 liczb naturalnych to sprawdzi, czy podczas wpisywania tych liczb znalazł się element mniejszy od elementu poprzedniego i zlicza
aaaa
Ale w takim razie jaki jest problem? Czytasz liczbę. Sprawdzasz czy jest >= od poprzedniej. Jeśli nie to licznik++.
Problem pewnie brzmi: napiszcie mi to. ;p
Problem w tym że nie wiem jak sprawdzić, że liczba jest mniejsza od porzedniej?
Jak to jak? o_O
if(a < b)
//liczba a jest mniejsza od liczby b
okey to wiem ale problem w tym:
int main()
{
int n, a, b;
cin>>n; // liczba elementów ciągu
for(int i=1; i<n; i++) cin>>a>>b;
if(a<b) l++;
cout<<l;
}
Kiedy np. chce 6 elmentów to musze wprowadzać więcej... i w tym jest mój problem, coś w pętli for mam nie tak...
To prawda, coś jest nie tak. Jak się programuje to warto używać MÓZGU. A nie klepac bezmyślnie.
#include <iostream>
using namespace std;
int main()
{
int tablica[2];
int n,licznik=0;
cin>>n;
if(n>0)
{
cin>>tablica[0]; //przynajmniej jedną liczbę musimy wczytać
for(int i=1; i<n; i++)
{
cin>>tablica[i%2];
if(tablica[i%2]<tablica[(i-1)%2])
licznik++;
}
}
cout<<licznik;
}
nie wiem po co zastosowałeś reszte z dzielenia, jak szło zrobić bez tego. Dzięki "MÓZGU"!
Po to żebyś musiał pomyśleć żeby zrozumieć ten kod, a nie tylko skopiował go bezmyślnie. Poza tym nie chciałem pisać takiego nieeleganckiego
if(b<a)
{
licznik++
a=b;
cin>>b;
}
:P
woopp napisał(a)
nie wiem po co zastosowałeś reszte z dzielenia, jak szło zrobić bez tego.
Pomagasz czy prosisz o pomoc? Jeśli to drugie to więcej pokory by się przydało geniuszu programistyczny.