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

Вычислить сумму первых четырех положительных элементов.
с++,массив (если можно с комментариями)

👇
Ответ:
shaxzad123
shaxzad123
28.12.2020

#include <iostream>

#include <time.h>

#include <vector>

using namespace std;

void print_array(int* arr, int n) {

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

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

}

cout << endl;

}

int sum_in_vector(vector<int> vec) {

int sum = 0;

for (int elem : vec) {

 sum += elem;

}

return sum;

}

void print_vector(vector<int> vec) {

for (int elem : vec) {

 cout << elem << " ";

}

cout << endl;

}

int* auto_input_array(int* arr, int n) {

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

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

}

return arr;

}

vector<int> sum_of_the_first_four_positive_elements_in_the_array(int* arr, int n) {

vector<int> vec;

int count=0;

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

 if (arr[i] > 0) {

  vec.push_back(arr[i]);

  count++;

 }

 if (count == 4) {

  return vec;

 }

}

if (count < 4) {

 cout << "Не удалось получить 4 положительных элемента!" << endl;

 return vec;

}

}

int main() {

srand(time(NULL));

setlocale(LC_ALL, "Russian");

int n;

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

cin >> n;

int* array = new int[n];

vector<int> vec;

int sum = 0;

array = auto_input_array(array, n);

print_array(array, n);

vec = sum_of_the_first_four_positive_elements_in_the_array(array, n);

delete[] array;

print_vector(vec);

sum = sum_in_vector(vec);

cout << "Сумма равна: " << sum << endl;

}

4,7(84 оценок)
Открыть все ответы
Ответ:
jono1
jono1
28.12.2020

9 в десятичной = 1001 в двоичной

2 в десятичной = 10 в двоичной

4 в десятичной = 100 в двоичной

1 в десятичной = 1 в двоичной

6 в десятичной = 110 в двоичной

Объяснение:

Я делала так:

10. От нуля отсчитываем количество цифр с конца. 0 под номером 0, а 1 под номером 1.

Дальше мы умножаем каждую цифру данного числа на 2 (так как переводим из двоичной системы) и в степень ставим номер числа

То есть 1•2^1 + 0•2^0 = 2 + 0 = 2 в десятичной

Так же с остальными.

1001 - 3210

1•2^3 + 0•2^2 + 0•2^1 + 1•2^0 (любое число в нулевой степени превращается в единицу) = 8 + 0 + 0 + 1 = 9 в десятичной

4,4(10 оценок)
Ответ:
MariyaKokhonova
MariyaKokhonova
28.12.2020

program sailor;

var

 a, b, c, d, e, f: integer;

begin

 read(a, b, c, d, e, f);

 if (b - a + 1 > d - c + 1) and (b - a + 1 > f - e + 1) then

   write('1');

 if (d - c + 1 > b - a + 1) and (d - c + 1 > f - e + 1) then

   write('2');

 if (f - e + 1 > b - a + 1) and (f - e + 1 > d - c + 1) then

   write('3');

end.

Объяснение:

program sailor;  // Название программы

var

 a, b, c, d, e, f: integer;  // Целочисленные переменные, отвечающие за часы в 1 - 3 дни

begin  // Начало программы

 read(a, b, c, d, e, f);  // Считываем часы с клавиатуры

 if (b - a + 1 > d - c + 1) and (b - a + 1 > f - e + 1) then  // Если разница между часами первого дня + 1 > разницы между часами второго и третьего дней, тогда

   write('1');  // Выводим 1

 if (d - c + 1 > b - a + 1) and (d - c + 1 > f - e + 1) then  // Если разница между часами второго дня + 1 > разницы между часами первого и третьего дней, тогда

   write('2');  // Выводим 2

 if (f - e + 1 > b - a + 1) and (f - e + 1 > d - c + 1) then  // Если разница между часами третьего дня + 1 > разницы между часами первого и второго дней, тогда

   write('3');  // Выводим 3

end. // Конец программы

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