Subprogramul nule are doi parametri: a, prin care primeşte un tablou unidimensional cu
maximum 100 de numere întregi, cu cel mult 4 cifre fiecare şi n, numărul de elemente din
tablou. Subprogramul rearanjează elementele tabloului unidimensional astfel încât toate
valorile nule să se afle la sfârşitul tabloului. Ordinea în cadrul secvenţei de elemente nenule
poate fi oricare. Tabloul modificat este furnizat tot prin parametrul a.
Exemplu: dacă n=6, a=(12,0,0,-3,-8,0), după apel, acesta ar putea fi:
a=(12,-3,-8,0,0,0).
Scrieţi definiţia completă a subprogramului nule in limbajul C++
AntiEaglesDavids:
incearca si asta: http://pastebin.com/3K7Y2zJQ
Răspunsuri la întrebare
Răspuns de
1
#include<iostream>
using namespace std;
typedef int vector[100];
int n;vector a;
void afisare(int n, vector a)
{ for (int i = 0; i < n; i++) cout << a[i] << " ";}
void nule(int n,vector a)
{ int aux; for (int i = 0; i<n - 1; i++)
for (int j = i + 1; j<n; j++)
if (a[i]==0)
{ aux = a[i]; a[i] = a[j]; a[j] = aux; }}
int main()
{ int i; cout << "n="; cin >> n;
for (i = 0; i<n; i++)
{ cout <<"a["<< i+1 << "] = ";cin >>a[i];
}
nule(n, a);
afisare(n, a);
system("pause");
return 0;}
using namespace std;
typedef int vector[100];
int n;vector a;
void afisare(int n, vector a)
{ for (int i = 0; i < n; i++) cout << a[i] << " ";}
void nule(int n,vector a)
{ int aux; for (int i = 0; i<n - 1; i++)
for (int j = i + 1; j<n; j++)
if (a[i]==0)
{ aux = a[i]; a[i] = a[j]; a[j] = aux; }}
int main()
{ int i; cout << "n="; cin >> n;
for (i = 0; i<n; i++)
{ cout <<"a["<< i+1 << "] = ";cin >>a[i];
}
nule(n, a);
afisare(n, a);
system("pause");
return 0;}
Alte întrebări interesante
Evaluare Națională: Lb. Română ,
8 ani în urmă
Matematică,
8 ani în urmă
Chimie,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă