Scrieţi un program C/C++ care citeşte de la tastatură două numere naturale din intervalul [2,20], n și
k, şi construieşte în memorie un tablou unidimensional cu n∙k elemente astfel: tabloul memorează un
şir crescător de termeni cu proprietatea că primul termen este n, fiecare valoare apare în şir de exact k
ori și oricare doi termeni alăturați au valori egale sau consecutive. Programul afişează pe ecran tabloul
construit, cu valorile separate prin câte un spaţiu.
Exemplu: dacă n=3 și k=4, se obține tabloul alăturat.
3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6
Răspunsuri la întrebare
Răspuns de
4
Răspuns:
#include <iostream>
using namespace std;
int main(){
int n,k,i,j,nk;
cout<<"n=";cin>>n;
cout<<"k=";cin>>k;
nk=n*k;
int v[nk];
i=0;j=0;
while(i<nk){
v[i]=n;
j++;i++;
if (j==k){
j=0;
n++;
}
}
for (i=0;i<nk;i++)
cout<<v[i]<<" ";
return 0;
}
Explicație:
Am pus codul in codeblocks. In exemplul tau pentru n=3 si k=4 ai 16 elemente si nu 12 cat ar trebui.
Alte întrebări interesante
Engleza,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă