#include<stdio.h>
int main(){
unsigned int arr_sz;
scanf("%u",&arr_sz);
signed long long int arr[arr_sz];
unsigned int arr_ism=0;
for(unsigned int i=0;i<arr_sz;i++){
scanf("%lld",&arr[i]);
if(arr[i]<arr[arr_ism])
arr_ism=i;
}
for(unsigned int i=0;i<arr_sz;i++)
printf("%lld ",arr[i]<0?arr[i]:arr[arr_ism]);
printf("\n");
//getchar();
return 0;
}
Var month: array[1..12]of string[10]=
(' январь ',' февраль ',' март ',' апрель ',' май ',' июнь ',
' июль ',' август ',' сентябрь ',' октябрь ',' ноябрь ',' декабрь ');
procedure p(s:string);
begin
writeln(s);
end;
var N_M:integer;
begin
writeln(' введи номер месяца ');
readln(N_M);
case N_M of
1..12: p(month[N_M]);
else p(' такого месяца нет ');
end;
case N_M of
1,3,5,7,8,10,12: p(' 31 день ');
4,6,9,11: p(' 30 дней ');
2: p(' 28 дней ');
end;
case N_M of
12,1,2: p(' зима');
3,4,5: p(' весна');
6,7,8: p(' осень');
9,10,11: p(' лето');
end;
end.
Пример:
<span> введи номер месяца
5
май
31 день
весна</span>
1) Записать число в двоичной системе счисления, и степени двойки справа налево: 16,8,4,2,1
2) Пройдитесь по каждой цифре двоичного числа. Если эта цифра 1, запишите
соответствующую степень двойки под цифрой. Если эта цифра 0, запишите
под цифрой 0.
т.е. 16 в первой степени, 8 в нулевой, 4 в первой, 2 в нулевой, 1 в первой
3) сложить полученные результаты
<span>
10101 ² = 16^1+8^0+4^1+2^0+1^1= 16+0+4+0+1=21
^ - это возведение в степень
</span>
Трёхбитовых слов всего 2^3 = 8
четырёхбитовых 2^4 = 16
пятибитовых 2^5 = 32
Всего 32+16+8 = 56 слов
Да, несложный язык :)
Где? на каком сайте? какая почта?