Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2008, 18:47   #1
BBagi
Пользователь
 
Аватар для BBagi
 
Регистрация: 25.12.2007
Сообщений: 11
По умолчанию Фамилия и инициалы

Задан массив, состоящий из строк вида фамилия, имя, отчество студента, разделенных пробелом. Написать программу, для печати списка студентов с фамилией и инициалами.

Где-то видела это решение) а вот найти не могу еще разок. Очень прошу помочь. Завтра ГОСы учу теоррию осталась одна задача из 27 )) крыша уже просто съехала=)))))))) Умные мужчины помогите ^_^
BBagi вне форума Ответить с цитированием
Старый 18.06.2008, 19:22   #2
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

Эта функция получает строку из массива, а возвращает Фамилию и инициалы.
Код:
function fio(s:string):string;
begin
Result:=copy(s,1,pos(' ',s));
delete(s,1,pos(' ',s));
Result:=Result+s[1];
delete(s,1,pos(' ',s));
Result:=Result+' '+s[1];
end;
zetrix вне форума Ответить с цитированием
Старый 18.06.2008, 19:27   #3
BBagi
Пользователь
 
Аватар для BBagi
 
Регистрация: 25.12.2007
Сообщений: 11
По умолчанию

А как грамотно вписать эту функцию в массив? просто не разу с этим не сталкивалась)))) ведь у нас в масиве допустим будет 6 строчек =))))))))))))))
BBagi вне форума Ответить с цитированием
Старый 18.06.2008, 19:31   #4
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

мда...
Код:
var a:array[1..6]of string;
i:byte;

function fio(s:string):string;   
begin  
Result:=copy(s,1,pos(' ',s));   
delete(s,1,pos(' ',s));   
Result:=Result+s[1];   
delete(s,1,pos(' ',s));   
Result:=Result+' '+s[1];   
end;  

begin
a[1]:='Неужели Сложно Было';
a[2]:='Самой Написать Этот;
//...
a[6]:='Код. Юная Программистка';

for i:=1 to 6 do writeln(fio(a[i]));
readln;
end.
zetrix вне форума Ответить с цитированием
Старый 18.06.2008, 19:47   #5
BBagi
Пользователь
 
Аватар для BBagi
 
Регистрация: 25.12.2007
Сообщений: 11
По умолчанию

=)))) ну глаза в кучку уже сварачиваются))) а можно))) как нибуть покрасивее вот это оформить=)))

Код:
a[1]:=' я не Волшебник'
a[2]:=   'я ^_^ {очень смущенно}'
//...   
a[6]:='только учусь'
Через цыкл))))

Задаю вопросы и понимаю на сколько же они дурадские))))))))))
аж щеки от стыда краснеют))))))

Последний раз редактировалось Alex21; 19.06.2008 в 07:50.
BBagi вне форума Ответить с цитированием
Старый 18.06.2008, 20:42   #6
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Вот простенькое решение без функции, лень делать, да особо она здесь и не нужна.
Код:
uses crt;
var s,s1:array[1..50]of string;
    n,i:integer;
begin
clrscr;
writeln('Vvedite kolichectvo strok:');
readln(n);
for i:=1 to n do
   begin
    writeln('Stroka ',i);
    readln(s[i]);
    s1[i]:=copy(s[i],1,pos(' ',s[i]));//копируем фамилию с пробелом
    delete(s[i],1,pos(' ',s[i])); //удаляем ее с пробелом
    s1[i]:=s1[i]+s[i][1]+'. '; //добавляем первую букву имени, точку и пробел
    delete(s[i],1,pos(' ',s[i]));//удаляем имя с пробелом
    s1[i]:=s1[i]+s[i][1]+'.'; //добавляем первую букву отчества и точку
   end;
writeln;
writeln('Rezultat:');
for i:=1 to n do
writeln(s1[i]);
readln
end.
puporev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
из имени и отчества - инициалы zetrix Microsoft Office Excel 2 25.05.2009 07:38
Как имя отчество преобразовать в инициалы? rerbi Microsoft Office Excel 2 04.08.2008 10:58