В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
кіндра
кіндра
30.08.2020 03:43 •  Информатика

Определи значение переменных s и i после выполнения фрагмента программы:


Определи значение переменных s и i после выполнения фрагмента программы:
Определи значение переменных s и i после выполнения фрагмента программы:
Определи значение переменных s и i после выполнения фрагмента программы:

Показать ответ
Ответ:
Angel9087
Angel9087
30.04.2022 19:01

Количество зёрен на клетке будет равно 2^(N-1)

Тут сказано использовать переменную типа integer, при этом надо помнить, что максимальный номер клетки, который можно задавать равен 31 (для номеров выше будет либо ошибка, либо неверный ответ).

Чтобы считать зерно вплоть до последней, 64-ой клетки шахматной доски- надо менять тип на uint64 либо BigInteger (но, они не везде доступны да и программу надо будет править).

Вариант с циклом loop (в нём задаётся число повторов)

function Zern2(a: integer): integer;

begin

Result := 1;

loop a-1 do

Result := Result * 2;

end;

begin

var n,m: integer;

write('Введите номер клетки: ');

Read(n);

m:=Zern2(n);

write('Зёрен на этой клетке: ',m,' шт.');

end.

Вариант с циклом while:

function Zern2(a: integer): integer;

begin

Result := 1;

while a>1 do

begin

Result := Result * 2;

a := a - 1;

end;

end;

begin

var n,m: integer;

write('Введите номер клетки: ');

Read(n);

m:=Zern2(n);

write('Зёрен на этой клетке: ',m,' шт.');

end.

Вариант без цикла:

function Zern2(a: integer): integer;

begin

Result := Trunc(power(2,a-1));

end;

begin

var n,m: integer;

write('Введите номер клетки: ');

Read(n);

m:=Zern2(n);

write('Зёрен на этой клетке: ',m,' шт.');

end.

0,0(0 оценок)
Ответ:
Arisha7575
Arisha7575
10.12.2021 13:06

#include <iostream>

#include <iomanip>

#include <stdio.h>

using namespace std;

//функция вывода массива в консоль

void printArray (int arr[][4], int n) {

   for (int i = 0; i < n; i++) {

       for (int j = 0; j < n; j++) {

           cout << setw(5) << arr[i][j];

       }

       cout << endl;

   } cout << endl;

}

//функция замены всех отрицательных элементов нулями

void taskOne (int arr[][4], int n) {

   for (int i = 0; i < n; i++) {

       for (int j = 0; j < n; j++) {

           if (arr[i][j] < 0) arr[i][j] = 0;

       }

   }

}

//функция нахождения суммы парных элементов

void taskTwo (int arr[][4], int n) {

   int sum = 0;

   cout << "Сумма парных чисел (";

   for (int i = 0; i < n; i++) {

       for (int j = 0; j < n; j++) {

           if (arr[i][j] % 2 == 0 && arr[i][j] != 0) {

               if(sum!=0) cout << ", "; //для красоты вывода)

               cout << arr[i][j];

               sum = sum + arr[i][j];

           }

       }

   }

   cout << ") = " << sum << endl << endl;

}

//функция нахождения среднего арифметическое мин и макс

void taskThree (int arr[][4], int n) {

   int max = arr[0][0];

   int min = arr[0][0];

   for (int i = 0; i < n; i++) {

       for (int j = 1; j < n; j++) {

           // Понятное дело что минимальное число в массиве 0, но может имеется

           // ввиду минимальное кроме 0. Если нет то проверку на ноль

           // можно убрать arr[i][j] != 0

           if (arr[i][j] != 0 && arr[i][j] < min) min = arr[i][j];

           if (arr[i][j] > max) max = arr[i][j];

       }

   }

   

   float result = float(max+min)/(n*n);

   cout << "max = " << max << ", min = " << min <<endl;

   cout << "Среднее арифметическое = " << result << endl <<endl;

}

int main() {

   const int n = 4; //размер массива

   int arr[n][n]; //объявляем двумерный массив размером 4 на 4

   

   // Многомерный массив заполняется значениями с вложенных циклов.

   for (int i = 0; i < n; i++) {

       for (int j = 0; j < n; j++) {

           arr[i][j] = rand() % 81 + (-40); // генерируем случайное число от -40 до 40

           //  rand() % N; возвращает число от 0 до N-1

           // Если сгенерируется число 80 то отнимая 40 получим нужный максимум

           // а если 0 - то -40, тоесть нужный нам минимум

       }

   }

   

   // Выводим массив в консоль.

   cout << "Сгенерированный массив 4 на 4" << endl << endl;

   printArray(arr, n);

   

   // №1 - Заменяем все отрицательные элементы нулями.

   cout << "Задание №1" << endl << endl;

   taskOne(arr, n);

   printArray(arr, n);

   

   // №2 - Заменяем все отрицательные элементы нулями.

   cout << "Задание №2" << endl << endl;

   taskTwo(arr, n);

   // №3 - Заменяем все отрицательные элементы нулями.

   cout << "Задание №3" << endl << endl;

   taskThree(arr, n);

   

   return 0;

}

На скриншоте вывод программы


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