Как-то так:
#include <iostream>
using namespace std;
// В данном примере я использовал типы float, т. к. при попытке делить 3 на 2 мы получаем 1.5, но тип int обрезает все после .
int main()
{
cout << "Task 30240725!" << endl; // just for fun
int m[12] = {-1,-2,3,4,5,6,7,8,9,10,11,12}; // Инициализируем массив из 12 элементов, чтоб хоть части из них была отрицательная
// среднее арифметическое состоит из сумма_числел / кол-во_чисел
float min_sum = 0; // сумма чисел
float total_min_count = 0; // кол-во чисел
// Инициализиуем цикл от 0 (т. к. все массивы начинаются с 0) до 12 не включительно (т. к. всего элементов 12 начиная с 0. Значит 11)
for (int i = 0; i < 12; i++) {
// если текущий элемент массива m от индекса i меньше чем 0, значит это отрицательное число
if (m[i] < 0) {
min_sum += m[i]; // складываем, непосредственно, само число m[i]
total_min_count++; // увеличиваем кол-во чисел на 1. Можно написать строку вида total_min_count = total_min_count + 1; - суть не поменяется
}
}
// Если в массиве не было отрицательных чисел, то делаем проверку. Если кол_во_чисел и сумма_чисел равны 0 значит в массиве не было отрицательных чисел.
// а т. к. по умолчанию min_sum и total_min_count равны 0, то при попытке поделить их получим ошибку. Для этого обрабатываем это условие, чтоб не дать ее допустить.
if (total_min_count == 0 && min_sum == 0) {
// Выкидываем сообщение, мол, нету в массиве отрицательных чисел, работать не буду
cout << "There are no negative numbers in the array" << endl;
// делаем return, дабы программа не продолжила выполнение
return 0;
}
// если же у нас есть и кол-во_чисел и общая_сумма, то спокойно делим одно на другое и сразу выводим в консоль результат.
cout << "Average: " << min_sum / total_min_count << endl;
// завершаем выполнение программы
return 0;
}
Как решал я. Выписал коротко связи:
Анастасия- работает не в Нью-Йорке
Екатерина- работает не в Берлине, преподаёт не психологию
Нью-Йорк- здесь живёт не преподаватель англ.языка
Берлин- здесь работает преподаватель высш.математики
Далее- в задаче все связи идут между тремя категориями- имена (Анастасия, Екатерина, Анна), города (Нью-Йорк, Берлин, Амстердам) и предметы (англ.язык, высш.математика, психология).
Я составил таблицы связей между категориями. Получилось три таблицы: имена-города, имена-предметы, предметы-города. Их я заполнил, используя условия задачи (см. картинку). При заполнении предположим, что живущая в Нью-Йорке там и работает (не мотаться же ей через океан, за 6000км). Обозначения- плюс-связаны, минус-не связаны, вопрос-ещё неизвестно.
Далее, решаем по таблицам:
Получается, в Нью-Йорке работает преподаватель психологии, а Амстердам остаётся для преподавателя английского языка.
Далее, психологию преподаёт или Анастасия, или Анна. Но, так как преподают психологию в Нью-Йорке, то подходит только Анна.
Собственно, мы уже нашли ответ. Но, доведём решение до конца на всякий случай (а то вдруг там какие то противоречия вылезут).
Проставляем плюсы: Анна-Нью-Йорк и Анна-психология. (Ставим и минусы соответственно: для Анны- все города, кроме Нью-Йорка и все предметы, кроме психологии. Для психологии- все имена, кроме Анны. Для Нью-Йорка- все имена, кроме Анны.)
Получаем, для Екатерины остаётся только работа в Амстердаме, значит для Анастасии- в Берлине.
Оставшаяся часть таблицы заполняется из уже введённых сведений- англ.язык преподают в Амстердаме, и преподаёт его Екатерина.
Ну, а высшая математика остаётся для Анастасии.
ответ: Анна преподаёт психологию в колледже Нью-Йорка.
Если S<10 или T<10 (или и то, и то), то программа выводит YES.
1) 6; 4 – YES
2) 7; 8 – YES
3) 8; 5 – YES
4) 5; 6 – YES
5) 11; 10 – NO
6) -5; 7 – YES
7) -2; 2 – YES
8) 4; 5 – YES
9) 8; 6 – YES
ответ: 1 раз.