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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 28.08.2010, 16:20   #11
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Видимо то, что задано "цепочку", получившуюся строковую переменную.
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума
Старый 28.08.2010, 16:30   #12
Janetka
Новичок
Джуниор
 
Регистрация: 28.08.2010
Сообщений: 27
По умолчанию

Выводит только первое слово и первую букву второго...и всё! ((
Janetka вне форума
Старый 28.08.2010, 16:32   #13
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Полностью листинг в студию плз. А еще в каком виде строки в файле и сколько строк там?
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума
Старый 28.08.2010, 16:40   #14
Janetka
Новичок
Джуниор
 
Регистрация: 28.08.2010
Сообщений: 27
По умолчанию

Код:
var 	f1,f2:text;                                                               
    	i,n,dl,y:integer;                                                         
    	s,slovo,bukva:string;                                                     
    	a:array [1..100] of string;                                               
begin                                                                         
{формируем первый файл}                                                       
assign(f1,'file1.txt');{устанавливаем связь файловой переменой с физическим файлом на диске}
rewrite(f1); {открываем файл для записи}                                      
readln(n);     {определим количество вводимых строк}                          
for i:=1 to n do begin                                                        
readln(s); {вводим с клавиатуры строки}                                       
writeln(f1,s); {записываем последовательно строки в файл}                     
a[i]:=s;                                                                      
end;                                                                          
close(f1); {заканчиваем работу с первым файлом}                                                                          
{берем первое слово из массива}                                               
slovo:=a[1]+' ';                                                                              
{удаляем первое слово из массива}                                             
a[1]:=' ';                                                                    
for i:=0 to n do begin {проходим по массиву}                                  
{получаем последнюю букву из строковой переменной до пробела}                 
dl:=length(slovo);                                                            
bukva:=copy(slovo, dl-1, 1);                                                  
for y:=0 to n do begin                                                        
if bukva=a[y][1] then begin                                                   
slovo:=slovo+a[y]+' ';                                                        
a[y]:=' ';                                                                    
end;                                                                          
end;                                                                          
end;                                                                          
writeln(slovo);                                                               
end.
Вот такая вот программа....

Последний раз редактировалось Stilet; 30.08.2010 в 08:34.
Janetka вне форума
Старый 28.08.2010, 17:16   #15
RomiKon
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 143
По умолчанию

Лично меня смутил способ присваивания значения переменой bukva.
Разве не легче так: bukva:=slovo[Length(slove)-1];
Да и тип этой переменой лучше брать символьный: bukva: char;
ну и удалять лучше не строку из элемента массива, а сам элемент массива.
Для этих целей послужит динамический массив: stroki: array of string;
Длину такого массива можно задать : SetLength(stroki, n);
Да кстати тут важна длина строки на выходе если она больше 255 то все операции на смарку.
Лучше для этих целей использовать массив
RomiKon вне форума
Старый 28.08.2010, 17:47   #16
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Я давал лишь идею (алгоритм) реализации. За оформлением кода и расходом ресурсов не слежу, т.к. предпочитаю, чтобы человек сам учился, а не всё разжеванное поглощал .
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума
Старый 28.08.2010, 19:21   #17
Janetka
Новичок
Джуниор
 
Регистрация: 28.08.2010
Сообщений: 27
По умолчанию

Мне, девушке, программирование, честно сказать, не нужно...Но даже не смотря на это, я стараюсь что-либо в этом понять....к сожалению не очень то получается. Спасибо за ваши советы, но для меня это мало изменило дело((( Я смотрю на результат, который в моем случае отсутствует: задача НЕ РЕШЕНА...
Janetka вне форума
Старый 28.08.2010, 19:35   #18
RomiKon
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 143
По умолчанию

Хорошо в таком случае выложи полный текст задачи.
Я постараюсь написать код с коментами.
RomiKon вне форума
Старый 28.08.2010, 19:57   #19
Janetka
Новичок
Джуниор
 
Регистрация: 28.08.2010
Сообщений: 27
По умолчанию

Да, сейчас))
Полный текст программы: В текстовом файле задан набор слов. Построить из них любую цепочку таким образом, чтобы символ в конце слова совпадал с символом в начале следующего.
Кстати, тот код программы, который я в последний раз здесь разместила, я с учетом ваших советов подкорректировала, а именно:
1) переменную bukva объявила типа char и 2) bukva:=slovo[Length(slove)-1];
В итоге при выводе у меня получилось вот что: выводится первое слово, а затем все остальные слова выводятся все на ту букву, на которое заканчивается певое...
Janetka вне форума
Старый 28.08.2010, 20:48   #20
RomiKon
Форумчанин
 
Регистрация: 11.04.2010
Сообщений: 143
По умолчанию

Вот как то так я ещё не тестил ибо времени нет будут вопросы пиши
Вложения
Тип файла: rar Proga.rar (988 байт, 12 просмотров)
RomiKon вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача на файлы Arturko Помощь студентам 7 11.02.2009 22:54
Паскаль.Файлы. задача. pif Помощь студентам 1 07.02.2009 23:00
Задача на файлы Плюшечка Паскаль, Turbo Pascal, PascalABC.NET 3 28.11.2007 18:37