Daca pun numere formate intr-un vector frecventa de aparitie(pun 1 pr pozitia lor) este eficient?
Apoi nu stiu cum sa le afisez deoarece nu stiu de la cat sa plec cu i ul in vector..
Am nevoi de ceva indicatii..
Multumesc!!
Răspunsuri la întrebare
Răspuns:
#include <iostream>
#include <fstream>
using namespace std;
ofstream g("bac.txt");
int n, x,y,z,r,t,i;
int main()
{
cout << "n= "; cin >> n;
cout << "x= "; cin >> x;
cout << "y= "; cin >> y;
cout << "z= "; cin >> z;
r=z-x;
if (n==1) g << x;
else
{
if (n==2) g << y << " " << x;
else
{
for (i=n; i>2; --i)
{
if (i%2==1) t=x+r*(i/2);
else t= y+r*((i-1)/2);
g << t << " ";
}
g << y << " " << x;
}
}
}
Explicație:
Şirul generat în ordine inversă a apariţiei :
41 40 38 37 35 34 32 31 29 28 26 25 23 22 20 19 17 16 14 13 11 10 8 7 5 4 2 1
se observă (dacă te uiţi atent :))) la numerele din şirul generat de acea formulă recurentă) că ai două şiruri, progresii aritmetice cu raţia 3 şi primul termen a1=1 (pentru indici impari) şi a1=2 (pentru indici pari) şi anume:
1 4 7 10 13 16 19 22 25 ...
2 5 8 11 14 17 20 23 26 ...