Top.Mail.Ru
Ответы

Информатика Паскаль Помогите пожалуйста

6. Составьте программу решения задачи: Для подготовки к ОГЭ по математике Сергей каждую неделю решал задачи. В первую неделю он решил всего № задач. В каждую следующую неделю Сергей решал на 10% задач больше, чем во все предыдущие недели (причем полученное значение решенных задач округлял до целого).

Составьте программу, которая определяет, сколько всего задач решил Сергей, если до экзамена осталось К дней (известно, что К больше 7). Если в последней неделе перед ОГЭ оказалось неполное количество дней, то эти дни считать не нужно.
Может кто то помочь нужно написать код на паскале

По дате
По рейтингу
Аватар пользователя
Ученик

Видимо составить задачу для тебя трудно. Но а почему мы должны её составлять? Ты думаешь это что то будет менять? Наивно.

Аватар пользователя
Профи

Увы но Паскаль тебе не поможет, ведь он уже давно умер

Аватар пользователя
Оракул

program a;
var n,k : integer; //n - задач, решённых в первую неделю, к - количество недель
begin
readln(n,k);
while k>1 do //начиная со второй недели
begin
k:=k-1;
n:=n+(n+n div 10); // увеличиваем количество задач и сразу подсчитываем за всё время
end;
writeln(n);
end.
//цикл WHILE вместо цикла FOR применили, чтобы не загромождать память лишними переменными

Аватар пользователя
Оракул

Только одна проблема: если в первую неделю несчастный Сергей решил всего одну задачу, то в седьмую неделю ему придётся решать 69 задач. В учебнике точно столько найдётся?

Аватар пользователя
1234567891011121314151617181920212223242526272829303132333435363738394041
 program SergeyTasks; 
 
uses 
  SysUtils; 
 
var 
  N, K, weeks, i, current, total, prev_total: Integer; 
 
begin 
  // Ввод исходных данных 
  Write('Введите количество задач, решенных в первую неделю (N): '); 
  ReadLn(N); 
  Write('Введите количество дней до экзамена (K > 7): '); 
  ReadLn(K); 
 
  // Проверка корректности ввода 
  if K <= 7 then 
  begin 
    WriteLn('Количество дней должно быть больше 7.'); 
    Exit; 
  end; 
 
  // Вычисление количества полных недель 
  weeks := K div 7; 
 
  // Инициализация переменных 
  total := N; 
  prev_total := N; 
 
  // Вычисление количества задач за каждую неделю 
  for i := 2 to weeks do 
  begin 
    current := Round(prev_total * 0.1); 
    total := total + current; 
    prev_total := prev_total + current; 
  end; 
 
  // Вывод результата 
  WriteLn('Общее количество задач, решенных Сергеем: ', total); 
end. 
 


Видео по теме