М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
даша3619
даша3619
17.06.2021 09:16 •  Информатика

Напишите программу для решения . в видеоигре игрок выигрывает 50 очков, если он сбивает самолет,100 очков, если он сбивает ракету, 200 очков, если он сбивает спутник. составьте программу, которая выведет на экран число очков игрока, который сбил а самолетов, в ракет и с спутников.

👇
Ответ:
natalikc
natalikc
17.06.2021
Var
a, b, c, d:Integer;
begin
Writeln('Ведите сколько вы сбили самолётов:');
readln(a);
Writeln('Ведите сколько вы сбили ракет:');
readln(b);
Writeln('Ведите сколько вы сбили спутников:');
readln(c);
a:=a*50;
b:=b*50;
c:=c*50;
d:=a+b+c;
writeln('У вас ', d, ' очков');
end.
4,7(52 оценок)
Открыть все ответы
Ответ:
рптпfgb
рптпfgb
17.06.2021

#include <iostream>

#include <time.h>

#include <vector>

using namespace std;

void print_array(int** arr, int n, int m) {

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

 for (size_t j = 0; j < m; j++) {

  cout << arr[i][j] << " ";

 }

 cout << endl;

}

cout << endl;

}

int** auto_input_matrix(int** arr, int n, int m) {

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

 for (size_t j = 0; j < m; j++) {

  arr[i][j] = rand() % 200 - 100;

 }

}

return arr;

}

void print_vector(vector<long long> vec) {

for (long long elem : vec) {

 cout << elem << " ";

}

cout << endl;

}

void print_vector(vector<int> vec) {

for (int elem : vec) {

 cout << elem << " ";

}

cout << endl;

}

pair<vector<long long>, vector<int>> multiplying_positive_elements_of_an_array_and_find_max_of_an_array_line_by_line(int** arr, int n, int m) {

long long multi = 0;

bool key = false;

int max = -100;

int index = 0;

vector<long long> vec_multi;

vector<int> vec_max_index;

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

 for (size_t j = 0; j < m; j++) {

  if (arr[i][j] > max) {

   max = arr[i][j];

   index = j;

  }

  if (arr[i][j] > 0) {

   if (!key) {

    multi = 1;

   }

   key = true;

   multi *= arr[i][j];

  }

 }

 vec_max_index.push_back(index);

 vec_multi.push_back(multi);

 max = -100;

 key = false;

}

return make_pair(vec_multi, vec_max_index);

}

int main() {

srand(time(NULL));

setlocale(LC_ALL, "Russian");

int n, m;

cout << "Введите количество строк в массиве: ";

cin >> n;

cout << "Введите количество элементов в массиве построчно: ";

cin >> m;

int** array = new int* [n];

pair<vector<long long>, vector<int>> pair_vec;

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

 array[i] = new int[m];

}

array = auto_input_matrix(array, n, m);

print_array(array, n, m);

pair_vec = multiplying_positive_elements_of_an_array_and_find_max_of_an_array_line_by_line(array, n, m);

cout << "Перемножение построчно: " << endl;

print_vector(pair_vec.first);

cout << "Максимумы на индексах: " << endl;

print_vector(pair_vec.second);

delete[] array;

pair_vec.first.clear();

pair_vec.second.clear();

}

4,7(88 оценок)
Ответ:
ALEXANDER982
ALEXANDER982
17.06.2021

   int r = minmax(a, b);

   cout << "Сумма min " << r << ", сумма max " << b << endl;

   return 0;

}

По поводу "всех объяснений" - я этого не понимаю. Написать что делает каждый оператор, зачем он тут и почему именно такой - это долгое и бессмысленное занятие, ответ будет объемом в несколько книжных страниц, но все равно толком ничего не даст. Если Вы не умеет программировать - учится надо не по ответу на задачу, а если умеете - никакое описание не нужно.

Единственная заморочка тут - передача длины массива в вызываемую функцию. В С++ с этим беда, потому обычно используют библиотечный класс Vector, где можно узнать длину массива. Вместо массива в С++ при вызове функции передается указатель на его первый элемент, поэтому информацию о длине массива получить нельзя. Так что нужно передавать еще один параметр - длину массива. Но в задании сказано, что параметра всего два и второй служит для получения максимальной из двух сумм. Но это при возвращении результата! Поэтому было принято решение при вызове функции в качестве b передать длину массива.


Написать программу на языке с++(со всеми объяснениями )1. написать функцию, которая принимает в каче
4,5(20 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ