liczbę określającą numer wyrazu ciągu, od którego ma być rysowany wykres,
liczbę określającą numer wyrazu ciągu, do którego ma być rysowany wykres,
wartość m.
Ciąg określony jest następująco:
an=an−2−an−1,
gdzie dwa pierwsze wyrazy ciągu wynoszą a0=2 i a1=1.
Na wykres składają się kolejne wiersze tekstu, które powinny rozpoczynać się od znaku pionowej kreski (|), a następnie zawierać tyle kropek, ile wynosi reszta z dzielenia przez m kolejnego wyrazu ciągu (począwszy od wyrazu na podanej pozycji) Dodatkowo, na koniec program powinien wypisywać łączną liczbę narysowanych kropek.
Zrobiłam tak:
Kod: Zaznacz cały
#include <iostream>
using namespace std;
int main()
{
int x, y, m;
cout << "Podaj numer pierwszego rysowanego wyrazu ciagu: " << endl;
cin >> x;
cout << "Podaj numer ostatniego rysowanego wyrazu ciagu: " << endl;
cin >> y;
cout << "Chcesz otrzymac reszte z dzielenia przez: " << endl;
cin >> m;
int n=2, a, a0=2, a1=1;
while (n<=x) {
n++;
a=a0-a1;
a0=a1;
a1=a;
}
int z=0, k;
while (x<=y) {
x++;
k=a%m;
a=a0-a1;
a0=a1;
a1=a;
cout << "| ";
while (z<=k) {
z++;
cout << ". ";
}
}
system("pause");
return 0;
}
Będę wdzięczna za pomoc, jeśli komuś chciałoby się to sprawdzić i powiedzieć mi, co jest źle (bo program źle rysuje wykres).