сергейважный1
05.02.2021 10:04

НАПИСАТЬ ПРОГРАММУ НА ПАСКАЛЕ: Вводится целое не отрицательное число. Определить сколько различных чисел, такой же длины можно составить из его цифр. При составлении числа должны использоваться все цифры исходного числа, в том же количестве, что и в исходном числе.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
vilrimma
17.10.2020 22:12
См. картинку во вложении.
ответ: 1

Такие задания решаются с трассировочной таблицы.
Выписываешь все переменные, которые есть в программе (если массив, то отдельно выписываешь каждую ячейку). Сколько переменных - столько столбцов в таблице. Потом притворяешься компьютером и выполняешь программу команда за командой, при этом записывая все изменения значений переменных по такому правилу:
1) если значение переменной ещё не определено, ничего не пишешь (оставляешь пустые клетки);
2) если значение переменной изменилось в ходе выполнения команды - пишешь новое значение (в моей таблице выделены жёлтым);
3) если значение переменной НЕ изменилось в ходе выполнения команды - пишешь старое значение (то есть переписываешь его из клетки, которая на одну выше).
В конце смотришь, значение какой переменной должен напечатать компьютер - это и есть ответ.
0,0(0 оценок)
Ответ:
Ganna003
06.07.2020 15:24
1-задача
var    A:array[1..5] of integer;
 s,P,K,i,c :integer;
begin
   for I:=1 to 5 do begin
      write('ведите число ');
      readln(A[i]);
   end;
   S:=0; c:=0;
   P:=1; K:=0;
   for I:=1 to 5 do begin
      if  a[i]>0 then begin S:=S+A[i]; c:=c+1; end;
      if (a[i] mod 12)<>0 then P:=P*A[i];
      if (a[i]mod 2)=0 then K:=K+1;
   end;
   writeln('средняя сумма положительных чисел= ',S/c) ;
   writeln('произведение чисел не кратных 12= ',P) ;
   writeln('количество чётных чисел= ',k) ;
end.
можно сделать и с одним циклом. если надо - отпишись.

задача 2
расчёт с учётом того что у сотрудников разная ЗП
тоже можно сделать с одним  циклом.
var    A:array[1..5] of integer;
   i,zp:integer;
begin
   for I:=1 to 5 do begin
    write('ведите зарплату сотрудника ',i,': ');
    readln(A[i]);
   end;
  ZP:=0;
  for I:=1 to 5 do ZP:=ZP+A[i];
  write('общая сумма=',ZP);
   end.
задача 3
var    A:array[1..20] of integer;
   i,P,S,summ:integer;
begin
   for I:=1 to 20 do begin
    write('ведите число ');
    readln(A[i]);
   end;
  P:=1; S:=0;Summ:=0;
  for I:=1 to 20 do begin
    if A[i]>8 then  begin P:=P*a[i];S:=S+1; end;
    if (A[i]mod 15)<>0 then summ:=summ+A[i];
  end;
  writeln('среднее произведение чисел больше 8= ',P/S);
  write('семма чисел не кратных 15= ',summ);
   end.

и это тоже можно с одним циклом
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота