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

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

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

 
 Ответить  Открыть новую тему 
> зделал програмку все нармальна идет и результаты выводит те которые нужна, можна написать без массива или чтобы он регулировался?
maksimla
сообщение 19.04.2008 12:12
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 324
Пол: Мужской
Реальное имя: maksim

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


вот программка
Код
program Bevarde1;
var a,b,i,z:integer;    x,y:array [1..1000] of integer;
begin
  WriteLn('введиде большои делитель');
  Readln(a);
  WriteLn('и наименьшее повторяющееся');
  Readln(b);
  for i:= a*b downto 1 do
  y[i]:=i;
  for z:= a*b downto 1 do
  x[z]:=z;
   begin
   for i:= 1 to a*b do
   for z:= a*b downto 1 do
   if y[i]*x[z]=a*b then
   writeln(y[i],' и ',x[z]);
   end;
readln
end.

вводим 8 и 2
выводит
1 и 16
2 и 8
4 и 4
8 и 2
16 и 1
введешь большее число превышающее массив и все ошибка можна избавится от массива
чтобы какое хочешь число в приделах longint ввел и небыло ошибки или чтобы сам себя массив регулировал ?

Сообщение отредактировано: maksimla - 19.04.2008 12:14


--------------------
Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 19.04.2008 12:26
Сообщение #2


Гость






Я вообще не понимаю, зачем тебе тут массив - ты ж его заполняешь линейно...

program Bevarde1;
var a,b,i,z:longint;
begin
WriteLn('введите большой делитель'); Readln(a);
WriteLn('и наименьшее повторяющееся'); Readln(b);

for i:= 1 to a*b do
for z:= a*b downto 1 do
if i * z = a*b then writeln(i, ' и ', z);
readln
end.
Результаты совпадают с твоими...

Только учти, что работать правильно это будет только тогда, когда A*B помещается в диапазон LongInt, а не для любых двух чисел из диапазона LongInt...
 К началу страницы 
+ Ответить 

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

 



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