Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Каждое слово на новой строке

Автор: GAI 6.02.2004 10:14

Дали задачу: написать программ, печатающую содержимое своего ввода, помещая по одному слову на каждой строке!
Нужна помощь! Вообще-то она нужна на С, но я думаю потом попробывать перевести сам, а если кто могёт, помогите аожалуйста сразу на С
Люблю Pascal! Ненавижу С!

Автор: P@sh@ 6.02.2004 12:46

распечатать слова после того как ввели всю строку? или прямо во время ввода переходить на новую строку после нажатия пробела? и в том и в другом случае какие проблемы ?

Автор: trminator 6.02.2004 22:09

http://forum.pascal.net.ru/?board=zd;action=display;num=1075477196 - раздление строки на слова. Может, неоптимально, зато работает.

Автор: Igorok 9.02.2004 13:34

Цитата
распечатать слова после того как ввели всю строку? или прямо во время ввода переходить на новую строку после нажатия пробела? и в том и в другом случае какие проблемы ?


Ну вот если нет никаких проблем и выложил .s что знаешь

Автор: P@sh@ 9.02.2004 14:14

предлагаешь написать тебе несколько вариантов, чтоб ты сам мог посмотреть и выбрать тот, который нужно ?
у меня на это времени нет. пиши конкретную задачу. либо пиши в раздел "Задачи на заказ"

Автор: Igorok 9.02.2004 14:57

Цитата
предлагаешь написать тебе несколько вариантов, чтоб ты сам мог посмотреть и выбрать тот, который нужно ?
у меня на это времени нет. пиши конкретную задачу. либо пиши в раздел "Задачи на заказ"


Извини!
Нужно: Переносить слова во время набора предложения так, чтобы каждое новое слово печаталось сразу же на новой строке!

Автор: Igorok 9.02.2004 15:01

Да, P@sh@ , я там тебе message скинул, посмотри! ;) правда там написано как раз почти то же, что я написал сверху!

Автор: P@sh@ 9.02.2004 16:30

так бы сразу и сказал!
самый простой вариант:

Код
uses max_crt; {или просто crt}
var c: char;
begin
 repeat
   c:=readkey;
   if c=' ' then writeln else write(c);
 until c=#13;
end.

Автор: Igorok 9.02.2004 16:35

сынкью  :-[ , всё гениальное - просто

Автор: P@sh@ 10.02.2004 8:23

На С припоминается нечто вроде:

Код

 char c;
 do {
   if(getch(c)==32) cout << newline
   else cout << c;
 } while(c==13);

точнее не скажу, я С не изучал

Автор: Igorok 10.02.2004 11:18

а у меня на С получилось вот что:

#include <stdio.h>
#include <conio.h>
main()
{unsigned char st;
int i;
clrscr;
printf("nVvedite strokun");
printf("Priznak konza stroki -> tochka(.)n");
do
 {
   st=getch();
   if (st==' ') printf("n");
   else putch(st);
 }
while (st!='.');
getch();
}

Автор: Igorok 10.02.2004 11:18

Большое спасибо всем, кто не остался равнодушным  :-*

Автор: -X-Ray- 20.09.2007 20:35

#include <stdio.h>

main()
{
int c;

while ((c = getchar()) != EOF)
{
if (c == ' ')
{
putchar('\n');
}
else
putchar©;
}
}