Пожалуйста решите задачку на трёх я зыках- на QBasic, паскале и на С
Подсчитать наибольшее количество идущих подряд пробелов в данной строке
В данной в сообщении строке максимально длинная последовательность состоит из одного пробела.
vasilisk +1 

- VictorM
- Сообщения: 794
- Зарегистрирован: 23 окт 2006, 01:44
- Откуда: Lugansk, Ukraine
- Контактная информация:
Vasilisk писал(а):В данной в сообщении строке максимально длинная последовательность состоит из одного пробела.
Зачёт!!!

"Дайте людям рыбы, и вы накормите их на весь день;
научите их ловить рыбу - и вы накормите их на всю жизнь".
научите их ловить рыбу - и вы накормите их на всю жизнь".
Стучись 393877884.
До вечера будет готово...
До вечера будет готово...
На паскале
p=' ';
while pos(p,s)>0 do p:=p+' ';
writeln(length(p)-1)
p=' ';
while pos(p,s)>0 do p:=p+' ';
writeln(length(p)-1)
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
-
- Сообщения: 7
- Зарегистрирован: 01 июл 2008, 21:16
- Откуда: Dniepropetrovsk(Ukraine)
- Контактная информация:
Vasilisk писал(а):В данной в сообщении строке максимально длинная последовательность состоит из одного пробела.
Там же написано наибольшее количетсво ИДУЩИХ ПОДРЯД пробелов
слово слово - один пробел...
слово слово - три пробела..
-
- Сообщения: 7
- Зарегистрирован: 01 июл 2008, 21:16
- Откуда: Dniepropetrovsk(Ukraine)
- Контактная информация:
(С)
тут все легко: записываете строку в буффер типа char, а затем с помощью цикла for:
int max=0;
for(int i=0;i<strlen(stroka);i++)
{
while(stroka==' ') //в скобках должен стоять пробел, для тех кто думает - пустой символ это '' а не ' '
{
count++;
}
if(max<count) max = count;
count = 0;
}
где count - кол-во пробелов идущих подряд, stroka - строка в виде char,
max - кол-во искомых пробелов
может длинновато, но все же вариант
тут все легко: записываете строку в буффер типа char, а затем с помощью цикла for:
int max=0;
for(int i=0;i<strlen(stroka);i++)
{
while(stroka==' ') //в скобках должен стоять пробел, для тех кто думает - пустой символ это '' а не ' '
{
count++;
}
if(max<count) max = count;
count = 0;
}
где count - кол-во пробелов идущих подряд, stroka - строка в виде char,
max - кол-во искомых пробелов
может длинновато, но все же вариант