Помогите пожалуйста сделать так, чтобы количество элементов в массиве было не n (как в программе, ниже) , а ровно 50 (упростить программу)
В этой программе - тут дин. массив из n элементов на промежутке [-30;30] , программа считает наименьший элемент массива, их количество, номера, сортирует их
int main()
{
setlocale(LC_ALL, "rus");
int n,i,j,k,с, a,min;
cout<<"Введите размерность: ";
cin>>n;
a=0;
int *b = new int [n];
for(i=0;i<n;++i)
b[i]=30-rand()%61;
cout<<"Случайные числа: "<<"\n";
for(i=0;i<n;++i)
cout<<b[i]<<" ";
min=31;
for(i=0;ib[i])min=b[i];
cout<<"\n"<<"Мин число: "<<min;
с=0;
for(i=0;i<n;++i)
if (min==b[i])с++;
cout<<"\n"<<"Кол-во min: "<<с<<"";
cout<<"\n"<<"№ min: ";
for(i=0;i<n;++i)
if (min==b[i])cout<<++i<<"; ";
cout<<"\n"<<"Сортировка по возрастанию: "<<"\n";
for(i=0;i<n;++i)
{ for(j=i+1;jb[j])
{ k = b[i];
b[i] = b[j];
b[j] = k;}}}
for(i=0;i<n;++i)
cout<<b[i]<<" ";
return 0;
Другие языки программирования и технологии
Вопрос по программе С++
#include <iostream>
#include <array>
#include <algorithm>
#include <random>
#include <iomanip>
using namespace std;
short randomize(short = -30, short = 30);
void fill_array(array<short, 50>&);
void print(array<short, 50>&, streamsize = 5);
void print_min_elements(array<short, 50>&, short);
int main() {
setlocale(LC_CTYPE, "Russian");
array<short, 50> arr = { 0 };
fill_array(arr);
cout << "\n\t\t\t\tСлучайные числа: \n\n";
print(arr);
auto min = *min_element(arr.begin(), arr.end());
cout << "\n\t Минимальное число: " << min << ".\n";
auto cnt = count(arr.begin(), arr.end(), min);
cout << "\t Количество минимальных чисел в массиве: " << cnt << ".\n";
print_min_elements(arr, min);
sort(arr.begin(), arr.end());
cout << "\n\t\t\t Сортировка по возрастанию: \n\n";
print(arr);
cin.get();
}
void print_min_elements(array<short, 50>& arr, short min) {
bool flag = false;
cout << "\t Позиции минимальных чисел в массиве: ";
for (decltype(arr.size()) i = 0; i < arr.size(); ++i) if (arr[i] == min) {
if (flag) cout << ',';
cout << ' ' << i + 1;
if (!flag) flag = !flag;
}
cout << ".\n\n";
}
void print(array<short, 50>& arr, streamsize w) {
for (auto i : arr) cout << setw(w) << i;
cout << endl;
}
void fill_array(array<short, 50>& arr) {
for (auto &i : arr) i = randomize();
}
short randomize(short a, short b) {
if (a > b) swap(a, b);
uniform_int_distribution<short> rand(a, b);
random_device rnd;
return rand(rnd);
}
#include <array>
#include <algorithm>
#include <random>
#include <iomanip>
using namespace std;
short randomize(short = -30, short = 30);
void fill_array(array<short, 50>&);
void print(array<short, 50>&, streamsize = 5);
void print_min_elements(array<short, 50>&, short);
int main() {
setlocale(LC_CTYPE, "Russian");
array<short, 50> arr = { 0 };
fill_array(arr);
cout << "\n\t\t\t\tСлучайные числа: \n\n";
print(arr);
auto min = *min_element(arr.begin(), arr.end());
cout << "\n\t Минимальное число: " << min << ".\n";
auto cnt = count(arr.begin(), arr.end(), min);
cout << "\t Количество минимальных чисел в массиве: " << cnt << ".\n";
print_min_elements(arr, min);
sort(arr.begin(), arr.end());
cout << "\n\t\t\t Сортировка по возрастанию: \n\n";
print(arr);
cin.get();
}
void print_min_elements(array<short, 50>& arr, short min) {
bool flag = false;
cout << "\t Позиции минимальных чисел в массиве: ";
for (decltype(arr.size()) i = 0; i < arr.size(); ++i) if (arr[i] == min) {
if (flag) cout << ',';
cout << ' ' << i + 1;
if (!flag) flag = !flag;
}
cout << ".\n\n";
}
void print(array<short, 50>& arr, streamsize w) {
for (auto i : arr) cout << setw(w) << i;
cout << endl;
}
void fill_array(array<short, 50>& arr) {
for (auto &i : arr) i = randomize();
}
short randomize(short a, short b) {
if (a > b) swap(a, b);
uniform_int_distribution<short> rand(a, b);
random_device rnd;
return rand(rnd);
}
Догадаться тяжело? Убери cin, поставь n=50; Далее никакого "упрощения" не получится
int main()
{
setlocale(LC_ALL, "rus");
int n,i,j,k,с, a,min, n = 50;
a=0;
int *b = new int [n];
for(i=0;i<n;++i)
b[i]=30-rand()%61;
cout<<"Случайные числа: "<<"\n";
for(i=0;i<n;++i)
cout<<b[i]<<" ";
min=31;
for(i=0;ib[i])min=b[i];
cout<<"\n"<<"Мин число: "<<min;
с=0;
for(i=0;i<n;++i)
if (min==b[i])с++;
cout<<"\n"<<"Кол-во min: "<<с<<"";
cout<<"\n"<<"№ min: ";
for(i=0;i<n;++i)
if (min==b[i])cout<<++i<<"; ";
cout<<"\n"<<"Сортировка по возрастанию: "<<"\n";
for(i=0;i<n;++i)
{ for(j=i+1;jb[j])
{ k = b[i];
b[i] = b[j];
b[j] = k;}}}
for(i=0;i<n;++i)
cout<<b[i]<<" ";
return 0;
{
setlocale(LC_ALL, "rus");
int n,i,j,k,с, a,min, n = 50;
a=0;
int *b = new int [n];
for(i=0;i<n;++i)
b[i]=30-rand()%61;
cout<<"Случайные числа: "<<"\n";
for(i=0;i<n;++i)
cout<<b[i]<<" ";
min=31;
for(i=0;ib[i])min=b[i];
cout<<"\n"<<"Мин число: "<<min;
с=0;
for(i=0;i<n;++i)
if (min==b[i])с++;
cout<<"\n"<<"Кол-во min: "<<с<<"";
cout<<"\n"<<"№ min: ";
for(i=0;i<n;++i)
if (min==b[i])cout<<++i<<"; ";
cout<<"\n"<<"Сортировка по возрастанию: "<<"\n";
for(i=0;i<n;++i)
{ for(j=i+1;jb[j])
{ k = b[i];
b[i] = b[j];
b[j] = k;}}}
for(i=0;i<n;++i)
cout<<b[i]<<" ";
return 0;
Похожие вопросы
- Вопрос по программе (подробнее внутри)
- Вопрос про программы для музыки. Помогите очень надо!!!
- Интересуют вопросы по программам для монтирования видео и фотошопа
- Привет, у меня вопрос. Какую программу или игру можно сделать в c# widows forms? Кто какие делал. Мне срочно нужно!
- Играете в покер онлайн? Вопрос о программах Holdem manager/ Poker Tracker
- Срочно!!! Не займет много времени!!! Ломаю голову над вопросом, Помогите!!! Программа. Pascal. Паскаль
- я создаю программу (несколько вопросов от чайника!): D
- написал программу на с++ работает, но есть маленький вопрос
- heloword не запускается!? вопрос внутри!и код C+ builder! программа на С!
- есть вопрос,я хочу знать, ести ли программа, для построения трёхмерного изображения