![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
IlyasKaz |
![]() ![]()
Сообщение
#1
|
|||
Новичок ![]() Группа: Пользователи Сообщений: 11 Пол: Мужской Реальное имя: Il`yas Репутация: ![]() ![]() ![]() |
Переделать из вещественного в целочисленный заранее спасибо А то я догнать не могу как
uses crt;
const n:=5;
var i,j:integer;
t,sum:real;
b:array[1..n,1..n] of real;
begin
clrscr;
for i:=1 to 5 do begin
for j:=1 to 5 do begin
b[i,j]:=random;
write(b[i,j]:0:2,' ');
end;
writeln;
end;
for i:=1 to 5 do begin
for j:=1 to 5 do begin
t:=b[1,j];
b[1,j]:=b[5,j];
b[5,j]:=t;
end;
sum:=0;
for i:=1 to 5 do
begin
for j:=1 to 5 do
if (i+j-1<5)then
begin
sum:=sum+b[i,j];
end;
end;
end;
writeln;
writeln(sum:2:2);
writeln;
end
|
|||
Krjuger |
![]()
Сообщение
#2
|
|||
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
b:array[1..n,1..n] of integer;
????????Maybe)
|
|||
Lapp |
![]()
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Цитата ????????Maybe) нет, этого маловатоНиже необходимые изменения помечены комментарием "тут" Остальное - ошибки и советы uses crt;
const
n:=5;
var
i,j: integer;
t,sum: LongInt; // тут
b:array[1..n,1..n] of integer; // тут
begin
for i:=1 to 5 do begin
for j:=1 to 5 do begin
b[i,j]:=random(n*n); // тут
write(b[i,j]:0:2,' ');
end;
writeln;
end;
for i:=1 to 5 do // begin // ЗАЧЕМ делать обмен 5 РАЗ?? в любом случае, begin - лишнее
for j:=1 to 5 do begin // почему до 5? может, до n?
t:=b[1,j];
b[1,j]:=b[5,j];
b[5,j]:=t;
end;
sum:=0;
for i:=1 to 5 do begin
for j:=1 to 5 do
if (i+j-1<5)then begin // не нужно заключать один оператор в begin..end
sum:=sum+b[i,j];
end;
end;
//end; // лишний end, он уравновешивал тот begin, и все было еще хуже, чем казалось ))
writeln;
writeln(sum); // тут
writeln;
end. // точка
[исправлено] -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Krjuger |
![]()
Сообщение
#4
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
Lapp извини конешно,но
b:array[1..n,1..n] of real; // тут
ты ничего не изменил. А разве не надо переделать сам массив из вещественного в целочисленный? Цитата // почему до 5? может, до n? Ну как бы у него const n:=5; Ну можеть человеку нравится лазить по программе и менять в каждом цикле число,если вдруг не дай бог матрица станет не 5х5, а 6х6 например ![]() Сообщение отредактировано: Krjuger - 3.06.2011 11:57 |
Lapp |
![]()
Сообщение
#5
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Lapp извини конешно,но
Мой прогляд. Спасибо за указание, +1. Сейчас поправлю выше..b:array[1..n,1..n] of real; // тут
ты ничего не изменил. А разве не надо переделать сам массив из вещественного в целочисленный?Цитата Ну как бы у него const n:=5; Ну можеть человеку нравится лазить по программе и менять в каждом цикле число,если вдруг не дай бог матрица станет не 5х5, а 6х6 например Вопрос был к автору темы..![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
IUnknown |
![]()
Сообщение
#6
|
![]() a.k.a. volvo877 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: ![]() ![]() ![]() |
Андрей, что с тобой? В твоей программе еще как минимум 3 символа - лишние. Ну, рассказывать, какие именно - не буду (при смене типа данных с вещественного на целочисленный, первое, что делается - это изменяются форматы вывода), мало ли, может это домашнее задание топикстартеру
![]() |
Lapp |
![]()
Сообщение
#7
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Андрей, что с тобой? В твоей программе еще как минимум 3 символа - лишние. Ну, рассказывать, какие именно - не буду (при смене типа данных с вещественного на целочисленный, первое, что делается - это изменяются форматы вывода), мало ли, может это домашнее задание топикстартеру ![]() ![]() Я не буду говорить, что прога не моя.. Если бы я ограничился ответом на вопрос автора - тогда я можно было бы отбазариться - не мое дело. Но раз уж стал исправлять ошибки, надо делать это до конца.. Одну ошибку исправлю, вторая пусть все же остается ДЗ автору темы.. )) const
n:=5; // здесь не буду исправлять.. ))
var
i,j: integer;
t,sum: LongInt; // тут
b:array[1..n,1..n] of integer; // тут
begin
for i:=1 to 5 do begin
for j:=1 to 5 do begin
b[i,j]:=random(n*n); // тут
write(b[i,j]:4,' '); // ТУТ
end;
writeln;
end;
for i:=1 to 5 do // begin // ЗАЧЕМ делать обмен 5 РАЗ?? в любом случае, begin - лишнее
for j:=1 to 5 do begin // почему до 5? может, до n?
t:=b[1,j];
b[1,j]:=b[5,j];
b[5,j]:=t;
end;
sum:=0;
for i:=1 to 5 do begin
for j:=1 to 5 do
if (i+j-1<5)then begin // не нужно заключать один оператор в begin..end
sum:=sum+b[i,j];
end;
end;
//end; // лишний end, он уравновешивал тот begin, и все было еще хуже, чем казалось ))
writeln;
writeln(sum); // тут
writeln;
end.
В следующий раз напишу "некоторые ошибки и советы" )) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 3:41 |