Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
24 / 24 / 13
Регистрация: 19.05.2010
Сообщений: 151
1

Исходная строка содержит сведения о человеке-Вывести эти сведения на экран в следующем виде:

09.11.2010, 09:02. Показов 1377. Ответов 1
Метки нет (Все метки)

к.р. вар14! помогите)
Эти сведения расположены в произвольном порядке, отделены друг от друга пробелами. На-
пример:
Иванов И.И. 1976 187
И.И. Иванов 187 1976
187 И.И. 1976 Иванов и т.п.
Вывести эти сведения на экран в следующем виде:
Иванов И.И. 1976 года рождения имеет рост 187 см.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.11.2010, 09:02
Ответы с готовыми решениями:

Сведения о компьютерах: Вывести сведения о IBM PC-486, приобретенных в 1995 г
Добрый вечер. Подскажите,что я делаю не так? Условие задачи: Сведенья о компьютерах некоторого...

Файл содержит сведения об автомобилях: марка, год выпуска, фамилия владельца и номер. Выведите сведения об автомобилях задаваемой марки и определите их средний возраст. Среди всех автомобилей найдите
Файл содержит сведения об автомобилях: марка, год выпуска, фамилия владельца и номер. Выведите...

Вывести на экран числа в следующем виде:
Вывести на экран числа в следующем виде: а) 1 22 333 4444 55555 б) 55555

Вывести на экран целые числа в следующем виде
) Вывести на экран целые числа в следующем виде: 666666 55555 4444 333 22 1

__________________
1
Модератор
63373 / 47069 / 32443
Регистрация: 18.05.2008
Сообщений: 114,087
09.11.2010, 10:14 2
Лучший ответ Сообщение было отмечено semakk как решение

Решение

Если исходную строку не курочить, ничего не удалять, то можно так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
uses crt;
const bk=['A'..'Z','a'..'z','А'..'п','р'..'ё'];
      cf=['0'..'9'];
var s,s1,fm,io,gr,rs:string;
    i,j:byte;
begin
clrscr;
writeln('Введите в любом порядке -');
writeln('фамилию, инициалы (И.О.), год рождения(4 цифры), рост(3 цифры)');
readln(s);
{ищем фамилию}
i:=1;
while i<=length(s) do
if(s[i] in bk)and((i=1)or(s[i-1]=' '))and(s[i+1]<>'.')then
 begin
  fm:='';
  j:=i;
  while(j<=length(s))and(s[j] in bk) do
   begin
    fm:=fm+s[j];
    j:=j+1;
   end;
  i:=i+length(fm);
 end
else i:=i+1;
write(fm,' ');
{ищем инициалы}
j:=pos('.',s);
io:=copy(s,j-1,4);
write(io,' ');
{ищем год и рост}
i:=1;
while i<=length(s) do
if(s[i] in cf)and((i=1)or(s[i-1]=' '))then
 begin
  s1:='';
  j:=i;
  while(j<=length(s))and(s[j] in cf) do
   begin
    s1:=s1+s[j];
    j:=j+1;
   end;
  if length(s1)=3 then rs:=s1
  else gr:=s1;
  i:=i+length(s1);
 end
else i:=i+1;
write(gr,' года рождения имеет рост ',rs);
readln
end.
Добавлено через 9 минут
Если строка не нужна, то можно так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
uses crt;
const bk=['A'..'Z','a'..'z','А'..'п','р'..'ё'];
      cf=['0'..'9'];
var s,s1,fm,io,gr,rs:string;
    i,j:byte;
begin
clrscr;
writeln('Введите в любом порядке -');
writeln('фамилию, инициалы (И.О.), год рождения(4 цифры), рост(3 цифры)');
readln(s);
s:=s+' ';
while pos(' ',s)>0 do
 begin
  s1:=copy(s,1,pos(' ',s)-1);
  if(s1[1] in bk)and(s1[2]<>'.')then fm:=s1
  else if (s1[1] in bk)and(s1[2]='.')then io:=s1
  else if(s1[1] in cf)and(length(s1)=4)then gr:=s1
  else rs:=s1;
  delete(s,1,pos(' ',s));
 end;
write(fm,' ',io,' ',gr,' года рождения имеет рост ',rs);
readln
end.
Добавлено через 1 минуту
А компромиссный вариант самый лучший. Вводите строку и делаете ее клон, с которым работаете
Pascal
1
2
3
4
5
6
7
8
var st,s,s1,fm,io,gr,rs:string;
    i,j:byte;
begin
clrscr;
writeln('Введите в любом порядке -');
writeln('фамилию, инициалы (И.О.), год рождения(4 цифры), рост(3 цифры)');
readln(st);
s:=st+' ';
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.11.2010, 10:14

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Исходная строка содержит сведения, упорядочить их
Исходная строка содержит сведения о человеке: фамилию, инициалы, год рождения, рост в см. Эти...

Дан файл F, содержащий сведения о сотрудниках в виде: Фамилия Имя Отчество. Переписать эти сведения в файл G в виде Фами
Помогите , программа крашиться #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;windows.h&gt;...

Исходная последовательность содержит сведения об автозаправочных станциях (АЗС)
Исходная последовательность содержит сведения об автозаправочных станциях (АЗС). Каждый элемент...

Как вывести на экран в виде одного сообщения сведения о новом автомобиле
Как вывести на экран в виде одного сообщения сведения о новом автомобиле, если его номер начинается...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.