Форум «Всё о Паскале» _ Задачи _ Проверить существование промежутка
Автор: SlimShady 15.05.2005 18:38
Вот условие:
Цитата
Границы промежутка заданы случайными числами. Проверить существование данного промежутка. На данном промежутке найти все числа, кратные числу с и их количество. Последовательность решения: 1. Описать переменные a, b, c как integer. 2. Задать с клавиатуры коэффициент кратности c. 3. Задать промежуток: randomize; a:=random(50); в:=random(100); 4. Проанализировать существование промежутка: если a>b, то промежуток не существует. 5. Организовать цикл от a до b и найти все кратные числа: for i:= а to в do if int(i/2)=i/2 then begin write( i, ’ ‘); k:=k+1; end; 6. Проанализировать значение счетчика к и выдать соответствующее сообщение. 7. Осуществить задержку результата на экране.
А вот то что написал я.....пишет какой-то бред...
program promezytok; uses crt; var a,b,c: integer; i,k: integer; begin ClrScr; write('Введите любое число'); read(с); randomize; a:=random(50); b:=random(100); if a>b then write('Промежуток не существует'); for i:=a to b do if int(i/2)-i/2 then begin write('i будет равно',i,''); k:=k+1; end; write('результат ',k,''); read; repeat until keypressed; end.
Автор: volvo 15.05.2005 20:05
Вообще-то кратность какому - либо числу проверяется немного по-другому:
program promezytok; uses crt; var a,b,c, i, k: integer; begin ClrScr; write('c = '); readln( с ); randomize; a:=random(50); b:=random(100); if a>b then write('not exists') else writeln( 'a = ', a, ' b = ', B ); for i:=a to b do if i mod c = 0 then begin { <--- вот так } writeln('i = ',i); k:=k+1; end; write('k = ', k); repeat until keypressed; end.
Автор: SlimShady 15.05.2005 20:35
Такс....вот ввожу я например С = 5....она мне пишет: a=23 b=50 I будет равно 25I будет равно30I будет равно35I будет равно40I будет равно45I будет равно50 результат 6
Так и должно быть??? Можно ли убрать эти повторения???
Автор: volvo 15.05.2005 21:42
Ну, ты меня извини, ты хоть условие-то прочти !!!
Цитата
На данном промежутке найти все числа, кратные числу с и их количество.
Какие повторения? Я тебе дал программу, которая дает совершенно другой вывод... ПОЧЕМУ надо ИЗМЕНИТЬ, а потом сказать, что неправильно работает? Ничего не меняй, прогони мою программу. Если работает правильно - будешь оформлять... Сначала добейся правильных результатов !!!