87348732
22.08.2021 11:45

Питон Сумма половины цифр в числе, сложить первую половину цифр в числе, если число имеет нечетное кол-во цифр, сложить все цифры в числе

Входные данные

1) 1234

2)333

Выходные данные

1)3

2)9​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
mimimi055
10.06.2021 17:44
Конечно, я могу помочь вам составить такую программу на языке PascalABC.

Ниже приведен код программы:

```pascal
program SchoolTeacher;

var
arr: array[1..10] of integer;
i, j, k, x, n: integer;
numArr: array[1..10] of integer;
numDigitsArr: array[1..10] of integer;

begin
randomize;
// Шаг 1: заполняем массив случайными числами
for i := 1 to 10 do
begin
arr[i] := random(71) - 40; // генерируем случайное число от -40 до 30
writeln('arr[', i, '] = ', arr[i]);
end;

// Шаг 2: удаляем элементы, состоящие из одинаковых цифр
for i := 1 to 10 do
begin
x := arr[i];
k := 0;
while x <> 0 do
begin
numArr[k + 1] := x mod 10;
x := x div 10;
k := k + 1;
end;
numDigitsArr[i] := k;

for j := 1 to k div 2 do
begin
if numArr[j] = numArr[k - j + 1] then
begin
arr[i] := 0; // заменяем число на 0, чтобы позже удалить его
end;
end;
end;

for i := 1 to 10 do
begin
if arr[i] <> 0 then
begin
// выводим только неудаленные числа
writeln('arr[', i, '] = ', arr[i]);
end;
end;

// Шаг 3: добавляем число к к элементам, в которых есть цифра 1 с клавиатуры
writeln('Введите число к:');
readln(k);

for i := 1 to 10 do
begin
x := arr[i];
while x <> 0 do
begin
if (x mod 10) = 1 then
begin
arr[i] := k * 10 + arr[i];
break; // прерываем цикл, чтобы не добавлять число к нескольким элементам
end;
x := x div 10;
end;
writeln('arr[', i, '] = ', arr[i]);
end;

// Шаг 4: переставляем первые три и последние три элемента местами
for i := 1 to 3 do
begin
x := arr[i];
arr[i] := arr[7 + i];
arr[7 + i] := x;
end;

for i := 1 to 10 do
begin
writeln('arr[', i, '] = ', arr[i]);
end;

readln;
end.
```

Объяснение:

1. На шаге 1 мы используем цикл для заполнения массива `arr` случайными числами из диапазона [-40, 30]. Функция `random(71) - 40` генерирует случайное число от 0 до 70, а затем вычитаем 40 для получения чисел из диапазона [-40, 30]. Затем мы выводим все элементы массива.

2. На шаге 2 мы используем цикл для проверки каждого элемента массива на наличие одинаковых цифр. Для этого мы разделяем число на цифры и сохраняем их в отдельный массив `numArr`. Затем сравниваем цифры из начала и конца числа, и если они одинаковы, заменяем элемент массива на 0.

3. На шаге 3 мы считываем число `k` с клавиатуры и затем проверяем каждый элемент массива на наличие цифры 1. Если цифра найдена, мы добавляем число `k` перед этим элементом, умноженное на 10.

4. На шаге 4 мы используем цикл для перестановки первых трех элементов массива со вторыми третьими. Это достигается путем присваивания значений первых трех элементов элементам с индексами 7, 8 и 9, а затем значениям с индексами 7, 8 и 9 присваивается значения из первых трех элементов.

После выполнения программы будет получен отсортированный массив согласно требованиям задачи. Надеюсь, этот ответ понятен для школьника. Если у вас есть еще вопросы, пожалуйста, спрашивайте.
0,0(0 оценок)
Ответ:
markpleshakov9oxahlf
17.06.2020 07:21
Хорошо, давайте разберемся вместе.

Для начала, давайте проанализируем каждый вариант описания массива А и определим правильный ответ.

1) A: array [1..25] of byte - данный вариант описывает массив А, который состоит из 25 элементов, причем каждый элемент представляет собой числовое значение типа byte. Тип byte может принимать значения от 0 до 255. Однако, в задании сказано, что массив состоит из переменных вещественного типа. Таким образом, данный вариант не является правильным.

2) A: array [1..25] of real - данный вариант описывает массив А, который состоит из 25 элементов, причем каждый элемент представляет собой вещественное число (число с плавающей запятой). В задании сказано, что массив состоит из нескольких переменных вещественного типа, поэтому данный вариант является правильным описанием массива А.

3) A: array [1..25] of integer - данный вариант описывает массив А, который состоит из 25 элементов, причем каждый элемент представляет собой целое число. В задании сказано, что массив состоит из нескольких переменных вещественного типа, поэтому данный вариант не является правильным.

4) A: [1..25] of real - данный вариант описывает массив А, который состоит из 25 элементов, причем каждый элемент представляет собой вещественное число. Оператор "array" отсутствует, что делает данную запись неправильной.

Таким образом, правильный ответ на задание - вариант 2) A: array [1..25] of real, так как он описывает массив А, состоящий из нескольких переменных вещественного типа.

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