program z1;
var a:array [1..6] of integer;
i,s:integer;
begin
s:=0;
randomize;
write ('Массив: ');
for i:= 1 to 6 do
begin
a[i]:=random(18);
write(a[i],' ');
s:=s+a[i]
end;
writeln;
writeln ('Сумма элементов массива: ',s);
writeln ('Среднее арифметическое элементов массива: ',s/6:0:1)
end.
Объяснение:
Цикл:
1) присваиваем значение текущему элементу массива
2) выводим текущий элемент массива на экран
3) считаем сумму элементов массива
Выводим сумму элементов массива на экран
Выводим среднее арифметическое элементов массива на экран (делим сумму на количество элементов), используя форматированный вывод (указываем после второго двоеточия количество знаков после запятой при выводе числа)
C#:
int a;
ConsoleKeyInfo keyInfo;
do
{
Console.WriteLine("Введите номер одного из зимних месяцев:\n12, 1, 2");
a = Convert.ToInt32(Console.ReadLine());
switch (a)
{
case 12:
Console.WriteLine("Декабрь\n");
break;
case 1:
Console.WriteLine("Январь\n");
break;
case 2:
Console.WriteLine("февраль\n");
break;
default:
Console.WriteLine("Не зимний месяц\n");
break;
}
//Ниже идёт зацикливание программы, для удобства. Если Вам этого не требуется, то вместо нижеперечисленного впишите "Console.ReadKey();"
Console.WriteLine("Если хотите повторить программу нажмите F");
Console.WriteLine("Если хотите завершить программу нажмите любую другую кнопку\n");
keyInfo = Console.ReadKey(true);
}
while (keyInfo.Key == ConsoleKey.F);
Поделитесь своими знаниями, ответьте на вопрос:
Нужно без циклов, только одним-единственным выражением с операций {+, -, *, //, % } вывести выражение, которое напечатает 'no', если a не делится на b. эта кусок от другой.выражение, которое печатает 'yes' в случае если a кратно b я вывела. идея в том, чтобы требуемое выражение для случая "не делится" давала 1 если a не кратно b, и 0 если кратно. прикрепляю своё решение для 'yes' a = int( b = int( print( 'yes' * // b) - (a % b)) // (a // b)) ) # print('no'* + a % b) // b) // (a // не работает решение подойдёт на любом языке в любом виде.главное, чтобы без читерских функций и методов
Задача сложна тем, что остаток от деления может быть может быть любым, от 1 до B-1. Поэтому она свелась к тому, чтобы ЛЮБОЕ число представить как 1. А нуль оставить нулём. Простейшим решением этой подзадачи явилось следующее: ( (Х + 2) // (Х + 1) ) % 2. В таком случае при Х = 0 левая часть выражения становится равна 2 и результат вычислений - 0. А при любом другом числе левая часть равна 1 и результат вычислений тоже будет 1. Теперь осталось выразить Х через А и В.
(((А % В) + 2) // ((А % В) + 1)) % 2.
Однако, следует помнить, что % - это операция деления, и при В = 0 интерпретатор или компилятор выдаст ошибку.
Для варианта с YES можно было бы использовать print('YES' * 1 - (А % В)).