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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 11.02.2009, 14:50   #1
Сова
Пользователь
 
Регистрация: 22.01.2009
Сообщений: 19
По умолчанию найдите ошибку

Проверьте задачу почему то не работает
заменить все отрицательные элементы двухмерного массива вещественных чисел нулями и посчитать сумму положительных элементов.
Код:
program mal;
uses crt;
var a:array[0..1,0..2] of integer;
begin
r:=0;
for i:=0 to r do;
for j:=0 to r do;
begin
if a[i,j]<0 then
a[i,j]:=0;
r:r+a[i,j];
end;
writeln (r);
readln;
end.
У вас тоже проблемы со зрением?
Значок # справа от значка "Цитата" видите?
Вот с его помощью и оформляйте код как положено...

Последний раз редактировалось mihali4; 11.02.2009 в 15:07.
Сова вне форума
Старый 11.02.2009, 15:33   #2
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Вот это поправьте

Код:
r:=r+a[i,j];
цикл нужно не до r прокручивать, тем более, что r даже не объявлена(как и остальные переменные i,j)
Кроме того нужно в начале проинициализировать массив
Нормальное состояние техники - нерабочее, все остальное частный случай.

Последний раз редактировалось alex_fcsm; 11.02.2009 в 15:37.
alex_fcsm вне форума
Старый 11.02.2009, 15:41   #3
Dark_Spirit
Форумчанин
 
Аватар для Dark_Spirit
 
Регистрация: 05.02.2009
Сообщений: 324
По умолчанию

извини но ту написан настоящий бред.
Попробуем исправить:
Цитата:
program mal;
uses crt;
var a:array[0..1,0..2] of integer;
(пропущено описание переменной r и переменных i,j);
begin
r:=0;
for i:=0 to r do; -вот тут ты пытаешься прокрутить цыкл от ноля к нулю, потому что у тебя r=0, точка с запятой после этого оператора не ставиться, ну а если поставили, значит не будет выполняться тело цикла;
for j:=0 to r do; - в этой строке аналогичная ошибка
begin
if a[i,j]<0
then
a[i,j]:=0;
r:r+a[i,j]; - самая страшня строка: во первых пропущен знак "="(даж и не знаю как компилятор это смог откомпилировать.), дальше ты в цикле увеличиваешь его границу(а вот сдесь ошибок может быть её больше);
end;
(у тебя и массив пустой потому ничего не увидишь)
writeln (r);
readln;
end.
Вот правильное решение(сравни с тем что ты написал):
program mal;
uses crt;
var a:array[0..1,0..2] of integer;
r:real;
i,j:integer;
begin
writeln('Введите массив');
for i:=0 to 1 do
for j:=0 to 2 do
begin
write('a[ ',i,' , ',j,' ]= ');
readln(a[i,j]);
end;
r:=0;
for i:=0 to 1 do
for j:=0 to 2 do
begin
if a[i,j]<0 then
a[i,j]:=0;
r:=r+a[i,j];
end;
writeln (r);
readln;
end.
Тяжело быть бестолковым.....

Последний раз редактировалось Dark_Spirit; 11.02.2009 в 15:45.
Dark_Spirit вне форума
Старый 11.02.2009, 15:43   #4
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

а массив проинициализирует кто?

P.S. По-моему модератор красным по белому написал, что нужно использовать тег форматирования кода
Нормальное состояние техники - нерабочее, все остальное частный случай.

Последний раз редактировалось alex_fcsm; 11.02.2009 в 15:52. Причина: Dark_Spirit поправил свой пост
alex_fcsm вне форума
Старый 11.02.2009, 17:52   #5
начинающий кодер
только учусь!
Форумчанин
 
Аватар для начинающий кодер
 
Регистрация: 08.02.2009
Сообщений: 124
По умолчанию

Код:
var a:array[0..1,0..2] of integer;
интересно зачем для 2 элементов 2-мерный массив для 3-х будет 3-хмерный и т.д.?
«Я знаю, что ничего не знаю, но многие не знают и этого».
начинающий кодер вне форума
Старый 11.02.2009, 17:59   #6
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

Цитата:
Сообщение от начинающий кодер Посмотреть сообщение
Код:
var a:array[0..1,0..2] of integer;
интересно зачем для 2 элементов 2-мерный массив для 3-х будет 3-хмерный и т.д.?
Извините, а Вы задание выше, то бишь в первом посте, читали?? и описанный массив по-моему содержит шесть элементов... Где Вы тут увидели 2 элемента??
по-моему Dark_Spirit дал исчерпывающий ответ....
maLoy*508 вне форума
Старый 11.02.2009, 18:02   #7
DM_bite
Участник клуба
 
Аватар для DM_bite
 
Регистрация: 29.07.2008
Сообщений: 1,091
По умолчанию

Код:
program mal;
uses crt;
var a:array[0..1,0..2] of integer;
begin
r:=0;
for i:=0 to r do;
for j:=0 to r do;
begin
if a[i,j]<0 then
a[i,j]:=0;
r:r+a[i,j];
end;
writeln (r);
readln;
end.
[offtop]Мне страшно...[/offtop]
Кто бы ты ни был - не думай о себе слишком (с)

Последний раз редактировалось DM_bite; 11.02.2009 в 18:06.
DM_bite вне форума
Старый 11.02.2009, 18:08   #8
motaro
Форумчанин
 
Регистрация: 10.07.2007
Сообщений: 104
По умолчанию

Цитата:
Сообщение от maLoy*508 Посмотреть сообщение
описанный массив по-моему содержит шесть элементов... Где Вы тут увидели 2 элемента??
помоему не 6 а 4!
motaro вне форума
Старый 11.02.2009, 18:19   #9
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

Цитата:
помоему не 6 а 4!
я в шоке...
считаем как в школе...
первый элемент - [0,0]
второй элемент - [0,1]
третий элемент - [0,2]
четвертый элемент - [1,0]
пятый элемент - [1,1]
шестой элемент - [1,2]
....

Модератор закрывайте тему... а то начался флуд....
maLoy*508 вне форума
Старый 11.02.2009, 18:46   #10
motaro
Форумчанин
 
Регистрация: 10.07.2007
Сообщений: 104
По умолчанию

Цитата:
Сообщение от maLoy*508 Посмотреть сообщение
я в шоке...
считаем как в школе...
первый элемент - [0,0]
второй элемент - [0,1]
третий элемент - [0,2]
четвертый элемент - [1,0]
пятый элемент - [1,1]
шестой элемент - [1,2]
....

Модератор закрывайте тему... а то начался флуд....
да все четко, я был не прав.
motaro вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найдите, пожалуйта,ошибки в задаче!очень срочно! Wia Помощь студентам 2 06.12.2008 20:02
НАЙДИТЕ ОШИБКУ В ПРОГРАММЕ svetah Помощь студентам 8 03.12.2008 15:19
Найдите Ошибку. Работа с файлами Lord_Rufus Помощь студентам 2 03.10.2008 11:44
Найдите наибольшее и наименьшее значение функции xtraSHAD0W Паскаль, Turbo Pascal, PascalABC.NET 3 01.04.2008 17:20
Найдите ошибку! geniy JavaScript, Ajax 4 04.12.2007 16:22