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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2014, 23:08   #1
lol32
 
Регистрация: 02.02.2014
Сообщений: 3
По умолчанию Напишите программу, используя вложенные циклы (FOR)

Составить программу для графического изображения делимости чисел от 1 до n (значение n вводится с клавиатуры). В каждой строке надо напечатать очередное число и столько символов «+», сколько делителей у этого числа. Например, если n=4, то на экране должно быть напечатано:
1+
2++
3++
4+++
lol32 вне форума Ответить с цитированием
Старый 10.02.2014, 23:33   #2
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var s: string;
  i, j, posit: Integer;
begin
  posit := StrToInt(Trim(Edit1.text));
  for i := 1 to posit do
  begin
    s := '';
    for j := 1 to i do
      if ((i mod j) = 0) then
        s := s + '+';
    memo1.Lines.Add(IntToStr(i) + s);
  end;
end;
написал на делфи, устроит?) Алгоритм понятен?) Дерзай, делфи это object pascal, паскаля нет под рукой, но если мне память не изменяет, то примерно так:

Код:
uses crt;
var
  s: string;
  i, j, posit: Integer;
begin
  clrscr;
  writeln('BBEDITE CHISLA');
  readln(posit);
  writeln;
  for i := 1 to posit do
  begin
    s := '';
    write(i);
    for j := 1 to i do
      if ((i mod j) = 0) then  s:=s+'+';
    write(s);
   writeln;
  end;
 writeln('POTRACHENO!');
 readln;
end.
Вот для наглядности файл проекта написанный на делфи, посмотри сам, что все работает. Помог? Жми на весы как на награду)) (слева)))
Вложения
Тип файла: rar плюсы.rar (174.0 Кб, 8 просмотров)
from dark to light)

Последний раз редактировалось Алексей_2012; 11.02.2014 в 00:24.
Алексей_2012 вне форума Ответить с цитированием
Старый 11.02.2014, 09:12   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

оптимизации ради хочу отметить, что в консольной версии легко обойтись без переменной s:
Код:
...
for i := 1 to posit do
  begin
    write(i);
    for j := 1 to i do
      if ((i mod j) = 0) then  Write('+');
    writeln;
  end;
...
но это так, просто небольшое примечание
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Напишите программу, используя модуль Джей Паскаль, Turbo Pascal, PascalABC.NET 1 28.04.2013 22:42
Вложенные циклы используя Do...Loop evox Microsoft Office Excel 1 19.05.2012 19:53
нужно написать программу на фортране по теме вложенные циклы в матричных задачах. lenahan Помощь студентам 0 14.02.2012 18:49
составить программу использую циклы но не используя массивы Naruto_026 Помощь студентам 0 01.11.2011 19:18
Используя циклы, написать программу Станислава13 Помощь студентам 1 10.05.2010 17:59