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

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

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

> массив, помогите
legion33
сообщение 2.05.2006 10:30
Сообщение #1





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

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


Здравствуйте Уважаемые !!!!!!! Вот есть такая задачка есть массив из 50 элементов, его нужно ввести в прямом порядке до первого отрицательного числа, а вот вывести его надо в три строки. Проблема такая он вводится нормально до первого отрицательного числа, т.е. цикл заканчивается на отрицательном числе, а вот вывести я его не могу в три строки, он выводится в одну строку, как это сделать ????? Помогите пожайлуста !!!!!
Program Lab4;

Uses Crt;

const size = 50; {размер массива}

Var
c : array [0..size] of integer; {массив}
k, i : integer; {индекс}


begin
clrscr;
writeln ('Ввод массива целлых чисел');
writeln ('Работа с одномерным массивом');

{Заполнение массива числами}

for i := 1 to size do
begin
write ('c[', i, '] => ' : 2);
readln (c[i]);
if c[i] < 0 then break;
end;

writeln;

{Вывод массива в три строки }

k := (size div 3) + byte ((size mod 3) > 0);

for i := 1 to size do
begin
write (c[i] : 3);
if c[i] < 0 then break;
if (i mod k) = 0 then writeln;

end;

readln;

end.
ТЕГИ!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 2)
volvo
сообщение 2.05.2006 10:36
Сообщение #2


Гость






 k := (size div 3) + byte ((size mod 3) > 0);

попробуй поменять на
 k := (i div 3) + byte ((i mod 3) > 0);


Кстати, зачем массив описан с индексами от 0 до size? Используются же только индексы, начиная с 1-цы...
 К началу страницы 
+ Ответить 
legion33
сообщение 2.05.2006 10:41
Сообщение #3





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

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


Спасибо большое, оказывается всего дишь надо было поменять, СПАСИБО !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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