23.12.2013, 20:16 | #1 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
Помогите решить
Дан текстовый файл. Текст-столбик цифр. Нужно записать цифры в другой файл по порядку по 3 числа в строке. У меня получается, что в строке прописывается 3 раза одна и та же цифра. |
23.12.2013, 20:16 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Ранее созданных обсуждения помогут раскрыть глаза на решение проблемы Помогите решить Помогите решить Помогите решить Помогите решить Помогите решить С++ |
24.12.2013, 15:11 | #2 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Я, конечно, могу написать программку, но будет лучше, если ты выложишь свой вариант. Посмотрим, разберемся, исправим ошибки. |
|
24.12.2013, 19:30 | #3 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
const
A= 'A.txt'; B= 'B.txt'; var InFile, OutFile: text; N: integer; begin Assign( InFile, A); Reset( InFile); Assign( OutFile, B); Rewrite( OutFile); while not Eof(InFile) do begin Readln(InFile, N); Writeln(OutFile,N:6,N:6,N:6); end; Close( InFile); Close( OutFile); end. Я понимаю, что она делает. И даже понимаю почему. Я не пойму как её заставить записывать числа по порядку в одну строку. |
24.12.2013, 19:48 | #4 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Да легко. Например, так:
Код:
const A= 'A.txt'; B= 'B.txt'; var InFile, OutFile: text; N,k: integer; begin Assign(InFile, A); Reset(InFile); Assign(OutFile, B); Rewrite(OutFile); k:=0; while not Eof(InFile) do begin Readln(InFile, N); Inc(k); if k=3 then begin Writeln(OutFile,N:6); k:=0; end else Write(OutFile,N:6); end; Close(InFile); Close(OutFile); end. |
24.12.2013, 20:12 | #5 (permalink) |
Member
Регистрация: 31.03.2010
Адрес: Тульская область
Сообщений: 1,309
Сказал(а) спасибо: 11
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13090
|
Спасибо.
Были у меня подозрения о Write, но не додумался. А Writeln , получается, перекидывает на новую строку. Ешё раз спасибо. Хороший урок. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
24.12.2013, 20:34 | #6 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|