Где ошибка в коде С++ ? Помогите, пжл. Задание: Динамически создать массив размера n (n...

0 голосов
34 просмотров

Где ошибка в коде С++ ? Помогите, пжл.
Задание: Динамически создать массив размера n (n вводится с клавиатуры) и заполнить его случайными числами из диапазона [a, b] (a, b вводятся с клавиатуры). Заполнение массива реализовать с помощью функции.
Вычислить количество элементов массива, лежащих в диапазоне от number_А до number_В (number_А и number_В вводятся с клавиатуры), с помощью функции.
#include
#pragma hdrstop
#include
#include
#include
using namespace std;
void z(int *m, int n, int a, int b)
{
srand(time(NULL));
for(int i=0;i< n;i++)m[i]=a+rand()%(b-a+1);}
int k(int *m, int n, int a, int b)
{
int s=0; for(int i=0;i< n;i++)s+=m[i]>=a&&m[i]<=b;<br> return s;
}
int main()
{
int n,a,b,na,nb; cout<<" Vvedite razmer massiva n: "; cin>>n;
int *m=new int[n];
cout<<"Vvedite diapazon ot a do b: "; cin>>a>>b;
z(m,n,a,b);
for(int i=0;i< n;i++)cout< cout<< endl;<br> cout<<"number_A number_B: ";<br> cin>>na>>nb; cout<<"k="<< k(m,n,na,nb);<br> delete []m; cout<<"\nPress Enter for exit\n";<br> cin.get();
cin.get();}
Считает разность между А и Б, а не количество элементов


Информатика (15 баллов) | 34 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

#include
using namespace std; 
void z(int *m, int n, int a, int b)
{
srand(time(NULL));
for(int i=0;i< n;i++) m[i]=a+rand()%(b-a+1);
}
int k(int *m, int n, int a, int b)
{
int s=0;
for(int i=0;i< n;i++) s+=m[i]>=a && m[i]<=b;<br>return s;
}
int main()
{
int n,a,b,na,nb;
cout<<" Vvedite razmer massiva n: "; cin>>n;
int *m=new int[n];
cout<<"Vvedite diapazon ot a do b: "; cin>>a>>b;
z(m,n,a,b);
for(int i=0;i< n;i++) cout << m[i] << " ";<br>cout<< endl;<br>cout<<"number_A number_B: ";<br>cin>>na>>nb;
cout<<"k="<< k(m,n,na,nb);<br>delete []m;
cout<<"\nPress Enter for exit\n";<br>cin.get();
cin.get();
}

Пример:
Vvedite razmer massiva n: 10
Vvedite diapazon ot a do b: 10 50
15 16 31 21 36 34 23 39 31 11
number_A number_B: 20 30
k=2
Press Enter for exit

(194k баллов)