У Ани – белая, у Маши – синяя, у Вари – красная.
Объяснение:
Пусть Маша сказала правду и у неё не синяя флешка. Тогда у Ани не синяя флешка, и у Вари тоже не синяя (а белая). Значит, синей флешки ни у кого нет, чего быть не может. Поэтому про Машу сказали неправду, у неё синяя флешка.
Если синяя флешка у Маши, у Ани синей флешки быть не может, а тогда верное утверждение – о цвете флешки Вари. Если у Вари не белая флешка, то единственный оставшийся вариант – у Вари флешка красного цвета. Следовательно, у Ани – белая флешка.
Это ничему не противоречит, такое распределение удовлетворяет условию.
#include <iostream> // iostream
int main() { // int main
int N; // N
int M; // M
int sum = 0; // сумма чисел хэмминга от n до m
std::cout << "N: "; // запрашиваем N
std::cin >> N;
std::cout << "M: "; // запрашиваем M
std::cin >> M;
int *hemming = new int[M - N + 1]; // массив с числами хемминга
int counter = 0; // размер массива
for (int i = N; i <= M; ++i) { // записываем числа в массим хемминга
if (i % 2 == 0 || i % 3 == 0 || i % 5 == 0) { // если остаток от деления
std::cout << i << " "; // на 2 или 3 или 5 равен нулю
hemming[counter] = i; // и выводим.
sum += hemming[counter]; // прибавляем к сумме числа
++counter; // увеличиваем счётчик
}
}
std::cout << std::endl << sum; // выводим сумму
}
const N = 100;
const MAX = 50;
const MIN = -50;
var A: array [1..N] of integer;
var i,j,s,tmp: integer;
begin
randomize();
writeln('Исходный массив: ');
for i:=1 to N do
begin
A[i]:=random(MAX-MIN+1)+MIN;
write(A[i],' ');
end;
writeln();
for i:=1 to N do
for j:=i to N do
begin
if (A[j]<A[i]) then
begin
tmp:=A[i];
A[i]:=A[j];
A[j]:=tmp;
end;
end;
writeln('Отсортированный массив: ');
for i:=1 to N do write(A[i],' ');
writeln();
writeln('Сумма трех самых больших чисел: ',A[100]+A[99]+A[98]);
writeln('Попарные суммы самых больших и самых маленьких: ');
for i:=1 to N do write(A[i]+A[N-i+1],' ');
end.