Анна02000
12.05.2021 00:38

Данил дорохов для тебя пишу

var a : array[1..3] of integer;
i, indmineven, k : integer;
begin
repeat
writeln('введите три цифры, не менее одной чётной и хотя одну - не равную нулю');
readln(a[1],a[2],a[3]);
until ((a[1]< > 0) or (a[2]< > 0) or (a[3]< > 0))
and not (odd(a[1]) and odd(a[2]) and odd(
and (a[1] in [0..9]) and (a[2] in [0..9]) and (a[3] in [0..9]);

indmineven : = -1;
for i: =1 to 3 do
if not odd(a[i]) then begin
if indmineven< 0 then indmineven : = i
else
if a[i] end;
if indmineven < > 3 then begin
k : = a[indmineven];
a[indmineven] : = a[3];
a[3] : = k
end;
if a[1] then writeln(a[2],a[1],a[3])
else writeln(a[1],a[2],a[3]);
end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
hashedhashed1
30.05.2020 06:37
#include <iostream>
#include <string>
#include <cstdlib>
#include <algorithm>
using namespace std;
typedef unsigned short int USI;

int* fillArray(string name, int s);
int maxArray(int[], int s);
bool isPrime(int);
void deleteAllEqualTo(int[], int s, int value);
float averageOfPositive(int[], int s);
void printArray(int[], int s);

bool sortByDescAbs(int i, int j) {
return abs(i) > abs(j);
}

int main() {
setlocale(LC_ALL, "Russian");
USI n;
cout << "n = ";
cin >> n;
int* z = fillArray("z", n);
int max = maxArray(z, n);
if ( isPrime(max) ) {
deleteAllEqualTo(z, n, max);
}
float avg = averageOfPositive(z, n);
cout << "среднее: " << avg << '\n';
sort(z, z + n, sortByDescAbs);
cout << "z[" << n << "]: ";
printArray(z, n);
return 0;
}

int* fillArray(string name, int s) {
int array[s];
for (int i = 0; i < s; i++) {
cout << name << "[" << i << "] = ";
cin >> array[i];
}
return array;
}

int maxArray(int a[], int s) {
int max = a[0];
for (int i = 1; i < s; i++) {
if (a[i] > max) max = a[i];
}
return max;
}

bool isPrime(int n) {
if (n < 2) return false;
if (n == 2) return true;
if (n % 2 == 0) return false;
for (int i = 3; (i*i) <= n; i += 2) {
if (n % i == 0 ) return false;
}
return true;
}

void deleteAllEqualTo(int a[], int s, int value) {
for (int i = 0; i < s; i++) {
if (a[i] == value) a[i] = 0;
}
}

float averageOfPositive(int a[], int s) {
unsigned int sum = 0,
count = 0;
for (int i = 0; i < s; i++) {
if (a[i] > 0) {
sum += a[i];
count++;
}
}
return (sum / count);
}

void printArray(int a[], int s) {
for (int i = 0; i < s; i++) {
cout << a[i] << ' ';
}
}
0,0(0 оценок)
Ответ:
magnoliya220619
06.01.2021 18:39

условие – выражение логического типа.

Цикл может не выполняться ни разу, если значение логического выражения сразу же оказывается ложь.

Серия команд, находящихся между begin и end, выполняются до тех пор, пока условие истинно.

Для того чтобы цикл завершился, необходимо, чтобы последовательность инструкций между BEGIN и END изменяла значение переменных, входящих в условие.

Цикл с постусловием (иначе цикл до) имеет вид:

Объяснение:

условие – выражение логического типа.

Цикл может не выполняться ни разу, если значение логического выражения сразу же оказывается ложь.

Серия команд, находящихся между begin и end, выполняются до тех пор, пока условие истинно.

Для того чтобы цикл завершился, необходимо, чтобы последовательность инструкций между BEGIN и END изменяла значение переменных, входящих в условие.

Цикл с постусловием (иначе цикл до) имеет вид:

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота