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

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

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

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> Как копировать ответ ?!
Lagovas
сообщение 23.10.2008 16:11
Сообщение #1


Новичок
*

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

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


Народ, мне надо было подсчитать всевозможные комбинации 4 чисел которые могут быть 1-9, мне надо их скопировать, не знаю как это сделать ?! Подскажите плиз. Не у кого спросить. Если есть такая тема, киньте ссылку плиз, я искал. реально не нашел. Заранее благодарен.

Сообщение отредактировано: Lagovas - 23.10.2008 23:29
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.10.2008 16:27
Сообщение #2


Гость






Не совсем понятно, о чем речь... Что именно "попировать"?

Тебе что, надо генерировать сочетания? Или только найти их количество? В любом случае, это FAQ: Комбинаторика
 К началу страницы 
+ Ответить 
Lagovas
сообщение 23.10.2008 23:31
Сообщение #3


Новичок
*

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

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


В общем мне нужно не их количество, а сами комбинации, например 1111, 1112, 1113 и так далее. Но мне они нужны, что б вставить в другую программу, переписывать с паскаля долговатенько, ибо потом мне больше надо будет комбинаций, а как ответ скопировать, или перенести в другую программу, не знаю.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.10.2008 23:45
Сообщение #4


Гость






Ну, выводи результаты в файл, например...

В каком виде та, вторая программа, должна получить данные?
 К началу страницы 
+ Ответить 
Lapp
сообщение 23.10.2008 23:45
Сообщение #5


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(Lagovas @ 24.10.2008 0:31) *
как ответ скопировать, или перенести в другую программу, не знаю.

Ну, например, записать в файл, а другая программа этот файл считает. Не подходит?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lagovas
сообщение 24.10.2008 13:07
Сообщение #6


Новичок
*

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

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


А можно что б ответ выводился в какой то файл, тип его !? Желательно в текстовый файл вывести все это. Все эти цифри.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.10.2008 14:02
Сообщение #7


Гость






var f: text;
begin
assign(f, 'results.txt'); rewrite(f);
writeln(f, 'Здесь будут результаты!');
close(f);
end.
, то есть, создать файл, а потом просто печатать туда (по умолчанию, без указания файла первым параметром, Write(Ln) печатает в консоль)
 К началу страницы 
+ Ответить 
Lagovas
сообщение 24.10.2008 15:27
Сообщение #8


Новичок
*

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

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


Извини, но не совсем понял. Вот как я написал програмку с тем, что ты указал, правильно ?!
var a1,a2,a3,a4:integer;
var f:text;
begin for a1:=1 to 4 do
for a2:=1 to 9 do
for a3:=1 to 9 do
for a4:=1 to 9 do
assign(f,'result.txt');
rewrite(f);
writeln('тут будут резалты');
close(f);
end.

Оно создало файл result.txt'. Написало то, что в команде writeln по ходу, токо из за шрифтов, плохо написало. Но результат сам, не написало, де ошибся я ?!

М
Используй теги для публикации кода
Lapp

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.10.2008 15:35
Сообщение #9


Гость






Ты в моем коде в четвертой строке что, букву F не видишь? Я же тебе привел специально пример, как информация пишется в файл... Без F строка будет выводиться на монитор...

И, на будущее, изъясняйся как-то более однозначно что-ли, а то тебя не поймешь, то написало, то не написало... Хотя чего должно было написать? Ты что, СКАЗАЛ программе что-то сделать с файлом? Насколько я вижу, у тебя только его создание (причем, Assign выполняется несколько тысяч раз) и закрытие. Записи в файл нет...

Сообщение отредактировано: volvo - 24.10.2008 15:36
 К началу страницы 
+ Ответить 
Lagovas
сообщение 24.10.2008 16:52
Сообщение #10


Новичок
*

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

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


Сор, недописал. В строке с writeln я f вписал, тут в посту забыл написать. Короче слова "тут будут резалты" оно выводит в файл result.txt, а комбинации нет. Я по самоучителю учусь еще, команду assign я еще не учил. Так что извини, я еще новичек, сильно не придирайтесь плиз.

Сообщение отредактировано: Lagovas - 24.10.2008 16:53
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.10.2008 17:25
Сообщение #11


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(Lagovas @ 24.10.2008 17:52) *
слова "тут будут резалты" оно выводит в файл result.txt, а комбинации нет. Я по самоучителю учусь еще, команду assign я еще не учил. Так что извини, я еще новичек, сильно не придирайтесь плиз.

Мы не то, что сильно, мы вообще не придираемся. Но понять тебя нелегко.
Процедура Assign заносит имя файла в файловую переменную. Это нужно сделать один раз, до цикла, также как и открытие файла. Потом в цикле проитзводишь запись того, что тебе нужно. Можно так, например:
WriteLn(f,a1,a2,a3,a4);

После цикла закрываешь файл. Все.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lagovas
сообщение 24.10.2008 17:28
Сообщение #12


Новичок
*

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

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


В общем можете дописать к моей программе того, что нехватает ?! А то я тож не совсем вас понимаю ( Лишь то, что нехватает, что б программа записала все комбинации в текстовый файл, пожалуйста.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.10.2008 17:31
Сообщение #13


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Я тебе написал все, что надо. Ты и минуты не думал над этим, сразу попросил готовую программу. Нет, друг, так не пойдет. "В общем", разберись и приходи.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lagovas
сообщение 24.10.2008 17:35
Сообщение #14


Новичок
*

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

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


Я просто не шарю команду assign, вот и все. Я с ней буду потом по книге разбиратся, там для меня просто легче обьясняется, вот и все. Лан, буду пробовать. На счет готовой ты перегнул, я лишь просил скопировать мою, и дописать де надо че надо, и все, лан, сам попытаюсь.

Сообщение отредактировано: Lagovas - 24.10.2008 17:36
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.10.2008 18:40
Сообщение #15


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(Lagovas @ 24.10.2008 18:35) *

Я просто не шарю команду assign, вот и все. Я с ней буду потом по книге разбиратся, там для меня просто легче обьясняется, вот и все. Лан, буду пробовать. На счет готовой ты перегнул, я лишь просил скопировать мою, и дописать де надо че надо, и все, лан, сам попытаюсь.

С assign нечего разбираться, про нее все тут уже сказано. Это просто способ связать твою файловую переменную с реальным файлом на диске. Нужно просто выполнить ее перед открытием файла, вот и все.

"Дописать че надо" - разве это не есть закончить для тебя прогу? Кроме того, нужно не только дописать, но и изменить кое-что. Я не против даже и готовую прогу тебе написать. Но ты же совсем даже не дал себе труда подумать над тем, что я тебе написал. Уверяю тебя, там есть все. И про assign, и про все остальное. Можешь пытаться сам, но в моем посте уже есть ответ. Достаточно записать это на Паскале.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lagovas
сообщение 24.10.2008 21:08
Сообщение #16


Новичок
*

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

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


Цитата
И, на будущее, изъясняйся как-то более однозначно что-ли, а то тебя не поймешь, то написало, то не написало... Хотя чего должно было написать? Ты что, СКАЗАЛ программе что-то сделать с файлом? Насколько я вижу, у тебя только его создание (причем, Assign выполняется несколько тысяч раз) и закрытие. Записи в файл нет...

А как сделать запись, я пробовал, ни в какую, писал команду с assign и перед циклом, и после, не пашет, еще не знаком с ним. Как сделать запись !?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 24.10.2008 21:20
Сообщение #17


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(Lagovas @ 24.10.2008 22:08) *
А как сделать запись, я пробовал, ни в какую, писал команду с assign и перед циклом, и после, не пашет, еще не знаком с ним. Как сделать запись !?

Тебе несколько раз сказали: assign не для записи! Как сделать запись показано в посте №11:
WriteLn(f,a1,a2,a3,a4);
Это надо вставить в цикл. А assign - перед циклом один раз


Добавлено через 9 мин.
Кстати,
М
тему переношу в Задачи.

Не место ей здесь.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lagovas
сообщение 25.10.2008 0:25
Сообщение #18


Новичок
*

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

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


var a1,a2,a3,a4:integer;
var f:text;
begin
assign(f,'result.txt');
rewrite(f);
close(f);
for a1:=1 to 4 do
for a2:=1 to 9 do
for a3:=1 to 9 do
for a4:=1 to 9 do
writeln(f,a1,a2,a3,a4);
end.

Правильно ?! Я так сделал, пишет ошибку Error 105: File not open for output. Что не так ?!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 25.10.2008 1:15
Сообщение #19


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(Lagovas @ 25.10.2008 1:25) *
пишет ошибку Error 105: File not open for output. Что не так ?!

Естественно. Ты открыл файл (rewrite(f)), а потом сразу его закрыл (close(f)), и только потом в него собрался писать. Ты когда хочешь написать в тетрадь, как делаешь? Открываешь ее, закрываешь, а потом пишешь? да? smile.gif Нормальные люди открывают, пишут и закрывают.
Еще раз перечитай пост №11. В нем ВСЕ написано.

P.S.
Ты английский хоть немного знаешь? На всякий случай привожу перевод английских слов, которые тут выступают как названия процедур:
assign - приписать (в данном случае - приписать название к файловой переменной);
rewrite - переписать (как бы заново начать писать, то есть открыть для записи);
write - писать, записывать (данные в файл);
close - закрыть.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lagovas
сообщение 25.10.2008 9:31
Сообщение #20


Новичок
*

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

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


Все, закончил и работает, спасибо и на этом. Кстати, подскажите плиз как сделать так, что б комбинации выводились в один столбик ? После writeln(f,a1,a2,a3,a4); написать writeln ?! Де то что то похожее видел, точно не помню.

Сообщение отредактировано: Lagovas - 25.10.2008 9:33
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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