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

Миша хочет набрать себе в команду двух человек, для этого у него есть N кандидатов. Чтобы выбрать лучших, он провёл два соревнования.
Результат у i-го кандидата определяется парой целых чисел ai, bi — количеством решённых задач на первом и на втором соревновании соответственно.
Миша решил, что первое соревнование сложнее второго, если
a1 + a2 + . . . + an < b1 + b2 + . . . + bn. В противном случае второе соревнование
сложнее первого.
Миша сравнивает кандидатов следующим образом:
1. Если кандидат i суммарно в двух соревнованиях решил больше задач, чем кандидат
j, то кандидат i сильнее;
2. В случае равенства в предыдущем пункте сравнивается количество задач, решённых на более сложном соревновании. Сильнее тот кандидат, который на сложном
соревновании решил больше задач, чем другой;
3. В случае равенства в двух предыдущих пунктах сравниваются номера кандидатов:
сильнее тот, у которого номер меньше.
Определите двух кандидатов, которые сильнее остальных по критериям Миши.
Python

👇
Открыть все ответы
Ответ:
Jdjdhdh66t
Jdjdhdh66t
16.12.2022

В условном операторе после if должно стоять логическое выражение.

Вы пишете о знаке равно, поэтому выражение должно иметь вид X=Y.

Х и Y - это выражения одного типа (числового, символьного и т.п.), значения которых должны совпасть. Так что если Х это некоторая переменная, то Y - это выражение, дающее ОДНО значение, которое и будет сравниваться со значением Х.

Если нужно проверить, находится ли Х в списке или диапазоне значений, можно использовать множества. Тогда в условном операторе нужно писать не знак равенства, а in:

if x in [3..20] then ...

или

if x in [4,18,43,37,150] then ...


В PascalABC.NET проверку на попадание в диапазон лучше делать в виде

if Between(x,3,20) then ... - тут 3,20 - диапазон для х

4,5(60 оценок)
Ответ:
kirill12123
kirill12123
16.12.2022

Важное замечание: Программа будет работать только при компиляции компилятором, поддерживающим стандарт C99.

#include <stdio.h>

#include <stdlib.h>


int compare(const int* A, const int* B); // компаратор для qsort

int main()

{

   int N;

   

   printf("Введите размер массива: ");

   scanf("%d", &N);

   

   int

       arr[N],

       sum = 0,

       number = 0;

   

   

   for(int i = 0; i < N; i++)

       scanf("%d", &arr[i]);

       

   for(int i = 0; i < N; i++)

       printf("%d ", arr[i]);

   printf("\n");

   for(int i = 0; i < N; i++)

   {

       if(arr[i])

           sum += arr[i];

       if((arr[i] % 3 == 0) && (i % 2 == 0))

           number += 1;

   }

   

   qsort(arr, N, sizeof(int), compare);

   

   for(int i = 0; i < N; i++)

       printf("%d ", arr[i]);

   

   

   printf("\nСумма положительных элементов = %d\n\

   количество элементов, имеющих четные порядковые номера и являющиеся нечетными числами = %d", sum, number);

   return 0;

}


int compare(const int* A, const int* B)

{

   return *A - *B;

}

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