если правильно поняла суть вашей программы, то нужно вводить количество элементов массива с клавиатуры (массив заполняется рэндомно от -10 до 10) и вывести элементы больше 0 . вас в цикле for зачем-то понесло на второе условие if(a[r+1]< 0) это неверно, цикл сам переберет все значения. примерный код:
static void znaki(int[] a)
{
//массив до изменений этот код можно удалить
//выводит весь массив со всеми значениями
for (int i = 0; i < a.length; i++)
{
console.write(a[i]+" ");
}
console.writeline();
//
console.writeline("положительные элементы массива: ");
for (int r = 0; r < a.length; r++)
{
if (a[r] > 0)
{
console.writeline(a[r]);
}
}
}
static void main(string[] args)
{
console.writeline("введите количество элементов в массиве: ");
int n = convert.toint32(console.;
int[] a = new int[n];
random rand = new random();
for (int i = 0; i < a.length; i++)
{
a[i] = rand.next(-10,10);
}
znaki(a);
console.readline();
}
ответ:
объяснение:
// pascalabc.net 3.2, сборка 1504 от 09.07.2017
// внимание! если программа не работает, обновите версию!
begin
var a: =arrrandom(readinteger('n='),0,99); a.println;
var s: =a.partition(x-> x.iseven);
if s[0].count< =s[1].count then writeln(s[0].min) else writeln(s[1].min)
end.
примеры
n= 9
33 43 60 94 5 19 84 58 6
5
n= 10
54 55 71 65 79 88 71 98 8 71
8
Поделитесь своими знаниями, ответьте на вопрос:
Ввести с клавиатуры 10 чисел. если среди них есть числа, большие 15, заменить их на 15. напечатать все полученные числа.решить в программе с++
#include "stdafx.h"#include < iostream> #include < conio.h> using namespace std; int main(){ int a[10]; for (int i = 0; i < 10; i++) { cout < < "a[" < < i < < "] = "; cin > > a[i]; } cout < < "source massiv: "; for (int i = 0; i < 10; i++) { cout < < a[i] < < " "; if (a[i] > 15) a[i] = 15; } cout < < "\nnew massiv: "; for (int i = 0; i < 10; i++) cout < < a[i] < < " "; cout < < endl; _getch(); return 0; }