Помощь - Поиск - Пользователи - Календарь
Полная версия: Люди помогите написать программу!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
ska4ai
Уже 2 дня сижу, с массивами ниччего не пойму, как в них вводить буквы. Задача такая: задан список русских фамилий(вместе с именами и отчествами), упорядочить их по алфавиту.
Проверить, и исправить если нужно,написание собственных имён с прописных букв. Заранее всем спасибо!!!

Добавлено через 14 мин.
и ещё дополнение. Я ввожу фамилии с клавы, и сколько их я не знаю. как тут обьявлять массив?
Archon
Используй для хранения данных массив строк (array[n..m] of string). Из задания не понятно, следует ли использовать динамические массивы или обходиться статическими. На случай динамических: FAQ: Динамические массивы и матрицы
ska4ai
Это задача по циклам
Archon
Значит ли это, что динамические массивы вы ещё не проходили?
ska4ai
ну видимо. 1 курс только
Archon
Тогда ты не можешь сделать программу для произвольного количества фамилий. Как вариант, создай массив заведомо большим размером, чем тебе понадобится, например "array[1..100] of string;". При вводе фамилий, считай их, и как только ввод закончится (признаком конца ввода можешь сделать пустую строку) сохрани число введённых фамилий. Далее предполагай, что твой массив имеет именно такую длину. Остальные его элементы останутся незадействованными.
ska4ai
а можно это в виде кода всё. мне нужна полностью программа
Rian
Цитата(ska4ai @ 3.11.2008 19:16) *

а можно это в виде кода всё. мне нужна полностью программа

конечно можно

uses crt;
var
mas:array [1..20]of string[30];
i,x:integer;
count:integer;
st,st2:string[30];
begin
clrscr;
writeln('write family');
count:=0;
repeat
st:='';
readln(st);
count:=count+1;
mas[count]:=st;

for i:=1 to count do
for x:=1 to count do
if mas[x]>mas[i] then begin
st2:=mas[x];
mas[x]:=mas[i];
mas[i]:=st2;
end;

until (st='')or(count=20);

writeln('END');
for i:=1 to count do writeln(mas[i]);

readkey;
end.


М
Почему паскалевский код небольшого размера - в аттаче? Вставляй в сообщение и обрамляй тегами, не заставляй других делать лишнюю работу и захламлять диск..

Я исправил. Lapp

Archon
А написание собственных имён с прописных букв сам сделаешь. Ведь должен же ты и сам что-то сделать =)
Rian
Цитата(Archon @ 3.11.2008 19:52) *

А написание собственных имён с прописных букв сам сделаешь. Ведь должен же ты и сам что-то сделать =)

smile.gif -правильно понимаешь неча баловать
Lapp
 ! 
ska4ai, приведи название в соответствие с Правилами (п.4) - иначе тема будет закрыта



2 feniks25:
1. Почему ты сортируешь весь массив после ввода каждой строки? для надежности? smile.gif
2. Почему в сортировке стоит полный цикл? Прежде, чем учить других, почитай сам про сортировку: Методы сортировок .
3. family <> фамилия smile.gif
Rian
Цитата(Lapp @ 4.11.2008 6:55) *

2 feniks25:
1. Почему ты сортируешь весь массив после ввода каждой строки? для надежности? smile.gif
2. Почему в сортировке стоит полный цикл? Прежде, чем учить других, почитай сам про сортировку: Методы сортировок .
3. family <> фамилия smile.gif


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

А с family<>фамилия я недавно на работе столкнулся, смешной был случай с немцем smile.gif

ЗЫ. а ссылка полезная, основательный материал, спасибо
Lapp
Цитата(feniks25 @ 4.11.2008 17:04) *
я хотел, чтобы человек сам хоть немного занялся оптимизацией иначе нет никакого смысла.
я специально сделал явные недостатки, это же в первую очередь надо ему, пусть развивает,
его нароботок я не видел.

Верно, смысла нет. Но давать явно неверное решение (без намеков на присутствие ошибок) - это все равно, что учить ездить по встречке - вроде и едешь, но..
Короче, будь добр, больше так не делай. Хотя бы пиши, что код содержит ошибки. А если ошибся, то имей мужество признать это.

 ! 
Тема закрывается ввиду невыполнения автором Правил Форума, п.4

Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.