|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.11.2008, 20:33 | #1 |
Пользователь
Регистрация: 26.10.2008
Сообщений: 40
|
Помогите разбить прогу!
Товарищи программеры, извиняюсь за тупейшие вопросы, но я чет никак не могу понять, как мою программу можно еще более упростить используя процедуры и ф-ции. Помогите пожалуйста. Вот мой исходник(всё работает). Задание : написать программу считывающую значения из файла, и выводящую на экран только те строки которые начинаются со знака тире, перед которыми могут быть только пробельные символы.Не могу понять, и всё( как тут еще более упростить??
Код:
Последний раз редактировалось TheKnyazz; 24.11.2008 в 20:36. |
24.11.2008, 22:22 | #2 |
Форумчанин
Регистрация: 11.11.2008
Сообщений: 161
|
Задание : написать программу считывающую значения из файла, и выводящую на экран только те строки которые начинаются со знака тире, перед которыми могут быть только пробельные символы.
В задано вывести на экран строки, а ты их еще и выводишь во второй файл? If s[1]= '-' then т.е. ты не предусматриваешь что в строке перед тире могут быть пробелы? И что тебе надо просто разбить листинг на процедуры? больше я не вижу как еще можно упростить))) Последний раз редактировалось Викдон; 24.11.2008 в 22:26. |
24.11.2008, 23:21 | #3 |
Форумчанин
Регистрация: 11.11.2008
Сообщений: 161
|
написать программу считывающую значения из файла, и выводящую на экран только те строки которые начинаются со знака тире, перед которыми могут быть только пробельные символы.
uses crt; var bloknot:text; s:string; c:char; i:integer; begin clrscr; assign(bloknot,'C:\1.txt'); reset(bloknot); while not Eof(bloknot) do begin read(bloknot,s); for i:=1 to length(s) do begin if s[i]='-' then begin writeln(s); readln(bloknot); break; end; if s[i]<>' ' then begin readln(bloknot); break; end end {for} end;{While} close(bloknot); readln; |
25.11.2008, 00:12 | #4 |
Пользователь
Регистрация: 26.10.2008
Сообщений: 40
|
спасибо,мне надо решить по условию максимально упрощая разбиением на функции, спасибо..понял, что про пробел забыл(ща попробую!
|
25.11.2008, 00:21 | #5 |
Форумчанин
Регистрация: 11.11.2008
Сообщений: 161
|
Тут конечно можно разбить на функции, но смысла в этом нету))
|
25.11.2008, 00:40 | #6 |
Пользователь
Регистрация: 26.10.2008
Сообщений: 40
|
Я ж об этом и говорил преподу, а он, учитесь использовать, набирайтесь опыта...
|
25.11.2008, 01:35 | #7 |
Форумчанин
Регистрация: 11.11.2008
Сообщений: 161
|
uses crt;
var bloknot:text; strochka:string; Function Odin (var blok:text):string; {Передается файл, фун-я читает по одной строчке файла, если строчка удов условию возвращает ее, в противном случае возвращает пробел} var i:integer; stroka:string; begin read(bloknot,stroka); for i:=1 to length(stroka) do begin if stroka[i]='-' then begin odin:=stroka; exit; end; if stroka[i]<>' ' then begin odin:=' '; exit; end end {for} end; begin clrscr; assign(bloknot,'C:\1.txt'); reset(bloknot); while not Eof (bloknot) do begin Strochka:=odin(bloknot); if Strochka<>' ' then writeln(Strochka); readln(bloknot); end; close(bloknot); readln; end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
разбить строку | Ceprey | Общие вопросы C/C++ | 10 | 24.12.2009 20:47 |
Разбить на группы | Romuald | Microsoft Office Excel | 2 | 04.11.2008 14:40 |
Разбить файл на 4 части | borzoni | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 31.05.2008 10:51 |
Разбить список на части | fotobra | Microsoft Office Excel | 1 | 23.02.2008 03:13 |
разбить ячейку и ивписать тхт | Axe_L | Помощь студентам | 2 | 22.10.2007 14:50 |