Дано целое число N (> 1) и набор из N целых чисел. Вывести те элементы в наборе, которые меньше своего правого соседа, и количество K таких элементов.
Как обозначить эти числа, если они генерируются? Я просто не понимаю, как можно сравнить числа, которые не имеют имени.
Вот код, который имеется:
#include
using namespace std;
int main() {
setlocale(LC_ALL, "RUS");
srand((int)time(0));
int N = rand() % 10 + 1;
cout << "N = " << N << endl;
int k = 0, x;
for (int i = 0; i < N; i++)
{
x = rand() % 100+1 ;
cout << x<<endl;
}
cout << endl;
cout << "Количество таких чисел = " << k << endl;
return 0;
}
C/C++
С++ Циклы. Помогите написать условие
Набор подразумевает собой массив
int N = rand() % 10 + 1;
int M[N];
M[0] = rand() % 100 + 1;
int Z[N];
int countZ = 0;
for(int x = 1; x < N; x++)
{
M[x] = rand() % 100 + 1;
if(M[x] > M[x-1])
{
Z[countZ]=M[x-1];
cout << Z[countZ] << ' ';
countZ++;
}
}
cout << endl << countZ << endl;
int N = rand() % 10 + 1;
int M[N];
M[0] = rand() % 100 + 1;
int Z[N];
int countZ = 0;
for(int x = 1; x < N; x++)
{
M[x] = rand() % 100 + 1;
if(M[x] > M[x-1])
{
Z[countZ]=M[x-1];
cout << Z[countZ] << ' ';
countZ++;
}
}
cout << endl << countZ << endl;
Захар Мосйчук
Без массива это вообще не решить? Просто по логике у меня тема "Циклы", т. е я якобы еще не знаю массивов.
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
srand(unsigned(time(nullptr)));
const size_t n = 1 + rand() % 20;
cout << "N = " << n << '\n';
auto set = new int[n];
for (auto i = 0U; i < n; ++i) {
set[i] = 1 + rand() % 100;
cout << setw(4) << set[i];
}
puts("");
auto k = 0U;
for (auto i = 0U, j = 1U; j < n; ++i, ++j) {
if (set[i] < set[j]) {
cout << setw(4) << set[i];
++k;
}
}
puts("");
system("chcp 1251 > nul");
cout << "Количество таких чисел = " << k << endl;
delete[] set;
system("pause > nul");
}
#include <iomanip>
using namespace std;
int main() {
srand(unsigned(time(nullptr)));
const size_t n = 1 + rand() % 20;
cout << "N = " << n << '\n';
auto set = new int[n];
for (auto i = 0U; i < n; ++i) {
set[i] = 1 + rand() % 100;
cout << setw(4) << set[i];
}
puts("");
auto k = 0U;
for (auto i = 0U, j = 1U; j < n; ++i, ++j) {
if (set[i] < set[j]) {
cout << setw(4) << set[i];
++k;
}
}
puts("");
system("chcp 1251 > nul");
cout << "Количество таких чисел = " << k << endl;
delete[] set;
system("pause > nul");
}
Цикл должен сравнивать элемент N=0 c N+1, и если первый элемент меньше второго - вывести его и К=0 прибавить еденицу. Естественно цикл считает от нуля до предпоследнего элемента (чтобы сравнить его с последним).
Элемент - это одно число в данном случае.
Элемент - это одно число в данном случае.
#include
using namespace std;
int main ()
{
int n, pred, cur, count = 0;
cin >> n >> cur;
for (int i = 0; i < n - 1; i++)
{
pred = cur;
cin >> cur;
if (pred < cur)
{
cout << pred << " ";
count++;
}
}
cout << endl << count;
return 0;
}
using namespace std;
int main ()
{
int n, pred, cur, count = 0;
cin >> n >> cur;
for (int i = 0; i < n - 1; i++)
{
pred = cur;
cin >> cur;
if (pred < cur)
{
cout << pred << " ";
count++;
}
}
cout << endl << count;
return 0;
}
Ulan Baimurat
Я не увидел, что ввод рандомный. Но суть будет та же.
Похожие вопросы
- ПОМОГИТЕ НАПИСАТЬ ПРОГРАММУ НА C++ ИСПОЛЬЗУЯ ТОЛЬКО ЦИКЛЫ.
- Помогите написать программу по этому условию
- Помогите написать программу по этому условию
- Помогите написать программу на С
- Помогите написать программу на C++
- Помогите написать программу на с++
- Помоги написать лабу по программированию на c++
- Помогите написать программу на с++
- Помогите написать программу
- С++. Структуры(struct). Помогите написать программу