IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> найти среднюю длину слов в массиве строк и заменить нею слова последней строки
INZA
сообщение 19.12.2010 21:42
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


найти среднюю длину слов в массиве строк и заменить нею слова последней строки (размерность массива 12)
среднюю длину вроде нахожу а как замену сделать ? как не введу постоянно не правильно помогите пожалуйста

Var S : string;
NumWords,
NumLetters,
k1,k2,
l : byte;
MiddleLet : real;
Cond : boolean;
Begin
Readln(S);
Writeln('S=',S);
NumWords:=0;
NumLetters:=0;
MiddleLet:=0;
k2:=0; Cond:=true;
While Cond do
Begin
k1:=NotSpace(S,k2+1);
If k1=0 then
Cond:=false
Else
Begin
k2:=Space(S,k1+1);
If k2=0 then
Begin
k2:=length(S)+1;
Cond:=false;
End;
l:=k2-k1;
Inc(NumWords);
Inc(NumLetters,l);
End;
End;
Writeln('кол-во слов=',NumWords,' кол-во букв=',
NumLetters);
If NumWords>0 then
MiddleLet:=NumLetters/NumWords;
Writeln('средняя длина=',MiddleLet:6:1);
End.


Сообщение отредактировано: INZA - 19.12.2010 21:43
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Lapp
сообщение 20.12.2010 4:23
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(INZA @ 19.12.2010 21:42) *
заменить нею слова последней строки
А что это значит?.. blink.gif


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
INZA
сообщение 20.12.2010 18:36
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской
Реальное имя: Владимир

Репутация: -  0  +


Цитата(Lapp @ 20.12.2010 5:23) *

А что это значит?.. blink.gif

цифрой ну например ср.длина слов 5 букв
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 21.12.2010 6:33
Сообщение #4


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(INZA @ 20.12.2010 18:36) *
цифрой ну например ср.длина слов 5 букв
Мне все равно непонятно. В таких случаях лучше всего привести пример.

Исходный файл text.txt:
Цитата
Hark how the bells,
sweet silver bells,
all seem to say,
throw cares away
Christmas is here,
bringing good cheer,
to young and old,
meek and the bold.
Ding dong ding dong
that is their song
with joyful ring
all caroling.

На нем вот эта моя программа:
const
m=12;
fName='text.txt';
Letters=['A'..'Z']+['a'..'z'];

var
s: array [1..m] of string;
l,n: LongInt;
i,j: integer;
w: string;
f: text;

begin
Assign(f,fName);
Reset(f);
for i:=1 to m do ReadLn(f,s[i]);
Close(f);
l:=0;
n:=0;
for i:=1 to m do begin
w:='';
for j:=1 to Length(s[i]) do begin
if s[i][j] in Letters then w:=w+s[i][j];
if not (s[i][j] in Letters) or (i=Length(s[i])) then
if w<>'' then begin
l:=l+Length(w);
Inc(n);
w:=''
end
end
end;
WriteLn('Average word length is ',l/n:0:3);
ReadLn
end.

- дает такой результат:
Average word length is 4.200


И что теперь делать? Вот так что ли:
Цитата
Hark how the bells,
sweet silver bells,
all seem to say,
throw cares away
Christmas is here,
bringing good cheer,
to young and old,
meek and the bold.
Ding dong ding dong
that is their song
with joyful ring
4.2 4.2.
- ? blink.gif
Я как-то сомневаюсь, что такое могло прийти в голову составителю этой задачи. Но - всякое бывает..
Пояснишь?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 14.07.2025 19:20
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"