Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Delphi] Генерация диапазона чисел 
V
    Опции темы
pomogite
  Дата 12.9.2006, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 24.3.2006

Репутация: нет
Всего: нет



Подскажите как на делфи можно сделать генерацию чисел например с 1 до 500 и чтобы все числа с 1 до 500 записались в файл...
PM MAIL   Вверх
Alexeis
Дата 12.9.2006, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 23
Всего: 459



Код

var
  L : TStringList;
  i : Integer;
Begin
  L := TStringList.Create;
  for i := 1 to 500
  do
    l.Add(IntToStr(i));
  l.SaveToFile('1.dat');
  l.Free;
end;


Это сообщение отредактировал(а) alexeis1 - 12.9.2006, 10:04


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
pomogite
Дата 12.9.2006, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 24.3.2006

Репутация: нет
Всего: нет



alexeis1, Пасиб большое!!! А как сделать так чтобы например в Edit1 стоит цифра 1 в Edit2 стоит 10 в Edit3 и Edit4 стоит 1 и 500 и чтобы на каждую следующую цифру Edit1 до Edit2 генерировалось по 500 цифр или меньше которые стоят в Edit3 и Edit4?
PM MAIL   Вверх
comtat
Дата 12.9.2006, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 8
Всего: 71



насколько я понял
Код

var    
  L : TStringList;    
  i : Integer;    
Begin    
  L := TStringList.Create;    
  for i := StrToInt(Edit1.Text) to StrToInt(Edit2.Text)     do    
    l.Add(IntToStr(i));    
    l.SaveToFile('1.dat');    
  l.Free;    
end;



--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
pomogite
Дата 12.9.2006, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 24.3.2006

Репутация: нет
Всего: нет



Нет надо вот что то типа того 
1.1
1.2
1.3
...
1.500
2.1
2.2
2.3
...
2.500
итд
где 1 цифра берётся из Edit3 до Edit4 а после точки цифры берутся из Edit1 до Edit2

PM MAIL   Вверх
comtat
Дата 12.9.2006, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 8
Всего: 71



Дык интересует как с плавоющей точкой работать ??


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
pomogite
Дата 12.9.2006, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 24.3.2006

Репутация: нет
Всего: нет



Вообщем есть 4 поля Edit 
в 1 пишется начальное число например 1 во втором конечное например 10, и пока после каждого числа от 1 до 10 небудут написаны числа с Edita3 до Edita4 то на следующее число не переходить вон как вверхнем посте в примере, я уже сама то не знаю как объяснить  smile 
PM MAIL   Вверх
comtat
Дата 12.9.2006, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 8
Всего: 71



Если не навру то это будет так
Код

....
var
  L : TStringList;
  i,j : integer;
begin
  L := TStringList.Create;
  for j:=StrToInt(Edit3.Text) to StrToInt(Edit4.Text) do
   begin
      i:=StrToInt(Edit1.Text);
      while i<=StrToInt(Edit2.Text) do
          l.Add(j+'.'+i);
    end;  
  l.SaveToFile('1.dat');
  l.Free;
end;


Не проверял но в принципе все должно быть нормуль  smile 
   


Это сообщение отредактировал(а) comtat - 12.9.2006, 16:21


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
pomogite
Дата 12.9.2006, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 24.3.2006

Репутация: нет
Всего: нет



Вот тут ошибку выдаёт l.Add(j+'.' (тут) +i);  smile 
PM MAIL   Вверх
KL911
  Дата 12.9.2006, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 12.9.2006

Репутация: нет
Всего: нет



А ошибка в предыдущем коде действительно была. smile 
Код
 
var
  f1:textfile;
  i,j : integer;
begin
  AssignFile(f1,'1.dat');
  Rewrite(f1);
  for j:=StrToInt(Edit3.Text) to StrToInt(Edit4.Text) do
   for i:=StrToInt(Edit1.Text) to StrToInt(Edit2.Text) do
    begin
      writeln(f1,j,'.',i);
    end;
  CloseFile(f1);
end;


вот ссылка над исходник, где тестировал:

исходник
PM MAIL   Вверх
pomogite
Дата 12.9.2006, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 24.3.2006

Репутация: нет
Всего: нет



Огромное спасибо всем кто помогал сейчас всё отлично работает!!! 
PM MAIL   Вверх
comtat
Дата 12.9.2006, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 8
Всего: 71



Цитата(KL911 @  12.9.2006,  17:24 Найти цитируемый пост)
А ошибка в предыдущем коде действительно была

Ну я ж говорил что не проверял
Дык не за что !!  smile 


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0704 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.