IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Наименьшее общее кратное из файла
dog
сообщение 11.09.2010 20:16
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

Репутация: -  0  +


Задача:

С клавиатуры вводится N целых чисел (из интервала [10; 100]).

Требуется

1. записать все введенные числа в файл

2. открыть файл и вывести на экран все записанные в него числа (в строку)

3. найти наименьшее общее кратное компонентов, в записи которых нет цифры k.

примечание: массивы в программе не использовать


PROGRAM PRP1;

FUNCTION NOD (x,y:INTEGER):INTEGER;
BEGIN
IF x<>0 THEN NOD:=NOD(y MOD x, x) ELSE NOD:=y;
END;

function NOK(x,y:INTEGER):INTEGER;
BEGIN
NOK:=(x DIV NOD(x,y))*y;
END;

VAR f: FILE OF INTEGER;
i,
x1, x2,
m,
k,
n
:INTEGER;


BEGIN
{----------------------------1-----------------------}
REPEAT
WRITE('Имя файла - ');
READLN(name);
ASSIGN(f, name);
{$I-}
REWRITE(f);
{$I+}
UNTIL IOResult=0;
WRITE('Начинаем ввод последовательности');
WRITELN(' (конец последовательности > 10 или < 100)');
WHILE (true) DO
BEGIN
WRITE('Значение = ');
READLN(n);
IF (n <=10) OR (n >=100) THEN BREAK;
WRITE(f,n);
END;
CLOSE(f);
{-----------------------------2------------------------}
WRITELN(' В файле были написаны числа ');
RESET(f);
WHILE NOT EOF(f) DO
BEGIN
READ(f,n);
WRITE(n, ' ');
END;
WRITELN;

{----------------------------3--------------------------}
WRITE('Введите цифру k - ');
READLN(k);
WRITE('Числа, не содержащие k - ');
SEEK(f, 0);
FOR i:=0 TO FileSize(f)-1 DO
BEGIN
READ(f,n);
x1:= n DIV 10;
x2:= n MOD 10;
IF (x1<>k) AND (x2<>k) THEN
BEGIN
WRITE(n, ' ');


END;
END;
WRITELN;
END.



Первые два пункта вообще никаких проблем, выделить числа не содержащие k тоже никакой проблемы, а вот найти наименьшее общее кратное без создания массива ???
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 31.07.2025 17:27
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"