Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2012, 16:20   #1
Настюня
 
Регистрация: 16.06.2012
Сообщений: 3
Вопрос Программа работает неправильно.

Решила задачу: "Вывести элементы арифметической прогрессии в диапазоне от N до M, если известны первый элемент А и разность D".
Программа работает неправильно: не выводит самый младший элемент заданного диапазона и выводит лишний самый последний. Помогите, пожалуйста, найти ошибку в решении! (Pascal)

Код:
program w8;
uses crt;
var a,d,n,m,x,k:integer;
begin
a:=2;
d:=3;
k:=0;
writeln('vvedite diapason');
readln(n,m);
while x<=m do begin
      x:=a+d*k;
      if x>=n then writeln(k+1,' element = ',x);
      k:=k+1;
      end;
readln;
end.


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 16.06.2012 в 18:31.
Настюня вне форума Ответить с цитированием
Старый 16.06.2012, 18:31   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Поменяйте местами строки с вычислением икса и выводом его на печать.
s-andriano вне форума Ответить с цитированием
Старый 16.06.2012, 18:34   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

есть парочка "скользских" моментов в вашем решении...

но, попробуйте так:
Код:
program w8;
uses crt;
var a,d,n,m,x,k:integer;
begin
a:=2;
d:=3;
k:=1;
repeat
  writeln('vvedite diapason');
  readln(n,m);
until n<m;
x:=a; {обязательно нужно присвоить X начальное}
while x<=m do begin
      if x>=n then writeln(k,' element = ',x);
      x:=a+d*k;
      k:=k+1;
      end;
readln;
end.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа с интервалами неправильно работает pahanzona Общие вопросы Delphi 2 11.03.2011 16:09
почему на чужем ПК неправильно работает программа Coder01 Общие вопросы Delphi 10 24.08.2010 19:34
sscanf() неправильно работает BioS Общие вопросы C/C++ 7 06.02.2010 22:36
Неправильно работает программа из книги Абеля. bullvinkle Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 23.02.2009 10:56
Скрипт неправильно работает aleksa76 JavaScript, Ajax 4 21.05.2008 17:47