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

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

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

 
 Ответить  Открыть новую тему 
> Двумерные массивы., Помогите исправить ошибки.
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

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


Исправьте пожалуйста ошибки в прогах,если они есть.
У меня не работает паскаль и я буду очень признательна,если кто-нибудь закинет мне в него проги и даст ссылочки.ПЛЗ!

1. Дан 2-х мерный массив, поменять местами указанные столбцы.
2. Дан 2-х мерный квадратный массив. требуется вывести на экран строку чисел, но не по порядку, а по змейке. см. пример: массив
1 2 3
4 5 6
7 8 9
результат вывода на экран
1 2 3 6 9 8 7 4 5

Препод написал,что они у него не запускаются.

Первая.
 const
n = 3;
a: array[1 .. n, 1 .. n] of integer =
((1, 2, 3),
(4, 5, 6),
(7, 8, 9));

var
i, j: integer;
first, second: integer;
T: integer;

begin
{ Stolbez s nomerom First pomeniat' mestami so stolbzom s nomerom Second }
first := 1; second := 2;

writeln('Do:');
for i := 1 to n do begin
for j := 1 to n do
write(a[i, j]:4);
writeln;
end;

for i := 1 to n do begin
T := a[i, first];
a[i, first] := a[i, second];
a[i, second] := T;
end;

writeln('Posle:');

for i := 1 to n do begin
for j := 1 to n do
write(a[i, j]:4);
writeln;
end;

end.



Вторая.

 const
n = 3;
a: array[1 .. n, 1 .. n] of integer =
((1, 2, 3),
(4, 5, 6),
(7, 8, 9));

var
steps: array[1 .. 2*n - 1] of byte;

var
i, j, ii, jj: integer;

begin
j := 0;
for i := 2*n-1 downto 1 do begin
if odd(i) then inc(j);
steps[i] := j
end;

j := 0;
ii := 1; jj := 0;
repeat

if j < 2*n-1 then begin
inc(j);
for i := 1 to steps[j] do begin
inc(jj); write(a[ii, jj]:5);
end;
end;

if j < 2*n-1 then begin
inc(j);
for i := 1 to steps[j] do begin
inc(ii); write(a[ii, jj]:5);
end;
end;

if j < 2*n-1 then begin
inc(j);
for i := 1 to steps[j] do begin
dec(jj); write(a[ii, jj]:5);
end;
end;

if j < 2*n-1 then begin
inc(j);
for i := 1 to steps[j] do begin
dec(ii); write(a[ii, jj]:5);
end;
end;

until j = (2*n - 1);
writeln;

end.



Сообщение отредактировано: Carola -


--------------------
°in the game of seduction, there is only one rule:never fall in love°
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Carola, так как эти решения писал я здесь:
Двумерный массив. Две задачи, то могу тебя уверить, что если бы они не запускались, я бы их не выложил... Вот лог работы первой программы:
Цитата
Turbo Pascal Version 7.0 Copyright © 1983,92 Borland International
До:
1 2 3
4 5 6
7 8 9
После:
2 1 3
5 4 6
8 7 9


А вот - для второй:
Цитата
Turbo Pascal Version 7.0 Copyright © 1983,92 Borland International
1 2 3 6 9 8 7 4 5


Я не знаю, что нужно преподавателю, но они обе прекрасно работают...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

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


Я в тебе не сомневалась даже.....Наверное это всё паскаль...Что-то с ним не то..с ошибкой у меня=(
Ты не мог бы закинуть мне в Паскаль...Очень прошу.

А вот ещё одна задача.
Препод по ней написал вот что - *меня не устраивает алгоритм с применением EXIT. это
противоречит канонам программирования.* mega_chok.gif

Ввести размерность матрицы(двумерной) и значения ее элементов., Построить вектор В, где В(i) -

задание 1. количество простых чисел в i+1 -ой строке.
(записать числа в вектор и выдать на экран)

 
Const
maxcount=100;
type
vec = array[1..maxcount] of Integer;
matrix = array[1..20,1..20] of integer;

function isPrime(X: integer): boolean;
var
i: integer;
Begin
isPrime:=false;
for i:=2 to trunc(sqrt(x)) do if x mod i = 0 then Exit;
isPrime:=true
End;
(* Postrochniy vvod matrizi *)
Procedure ReadMatr(var A:Matrix; var n,m:integer );
var
i,j:word;
begin
repeat
write('‚Vvedite kolichestvo slov: '); readln(N)
until (N>0) and (N<=sqrt(maxcount));
repeat
write('‚Vvedite kolichestvo stolbzov: '); readln(m)
until (M>0) and (M<=sqrt(maxcount));
For i:=1 to n do begin
For j:=1 to m do begin
write('A[',i,j,']= ');
readln(A[i,j])
end
end
end;





procedure vecprint (a:vec; n:integer);
var i:integer;
begin
writeln('prime int:');
for i:=1 to n do write(a[i],' | ')
end;

procedure getprime(a:matrix; n,m:integer; var b:vec; var nn:integer);
var i,j,s:integer;
begin
nn:=0;
for i:=1 to n -1 do begin
s:=0;
for j:=1 to m do if isprime(a[i+1,j]) then inc(s);
inc(nn);
b[nn]:=s
end
end;

var
a:matrix;
b:vec;
m,n,nn:integer;
begin
Readmatr(a,n,m);
getprime(a,n,m,b,nn);
vecprint(b,nn);
readln;
end.




П.с. Обнаружила что у нас Дни Рождения рядом=)У меня 3-го мая. give_rose.gif

Сообщение отредактировано: Carola -


--------------------
°in the game of seduction, there is only one rule:never fall in love°
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
Ты не мог бы закинуть мне в Паскаль...Очень прошу.
Ты о чем? Что значит "закинуть в Паскаль"?

А насчет
Цитата
это противоречит канонам программирования.
Ссылочку на "каноны программирования", запрещающие использование Exit, можно получить? Что за бред?

Ну, хорошо, поменяй IsPrime на это:

function isPrime(X: integer): boolean;
var
i: integer;
found: boolean;
Begin
i := 2; found := false;
while (i <= trunc(sqrt(x))) and (not found) do
if x mod i = 0 then found := true else inc(i);
isPrime := not found
End;
И, заодно, спроси у своего преподавателя, что он думает об использовании лишних переменных в программе, хорошо?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

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


Закинуть в паскаль - я имею в виду набить эту программе в паскале......и прислать мне...просто у меня паскаль не работает=(а мы отправляем программы в паскале...вот.....

Так прога правильная?Я сама не поняла вообще к чему он это.Заколебал придираться..Ему лишь бы слово вставить,а по уму о нас мало отличается..Чесслово..Ты в плане программирования горазно лучше.

Ага.....
Так сможешь мне набить в паскале...плз. unsure.gif


--------------------
°in the game of seduction, there is only one rule:never fall in love°
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Carola, просто скопируй программу в Notepad, и сохрани с расширением PAS... У меня с кириллицей проблемы...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

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


Цитата(volvo @ 24.12.2005 22:50) *

Carola, просто скопируй программу в Notepad, и сохрани с расширением PAS... У меня с кириллицей проблемы...


Сейчас попробуююю mega_chok.gif
А если нет,то тект изменю на латинские буквы..Ага.

Notepad в смысле Блокнот?


--------------------
°in the game of seduction, there is only one rule:never fall in love°
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

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


Не получается=(((((((

Я сделала всё латинскими буквами,так сможешь?????????????????


--------------------
°in the game of seduction, there is only one rule:never fall in love°
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Ну, вот эти 3 PAS-файла...


Прикрепленные файлы
Прикрепленный файл  carola_1.pas ( 665 байт ) Кол-во скачиваний: 299
Прикрепленный файл  carola_2.pas ( 971 байт ) Кол-во скачиваний: 268
Прикрепленный файл  carola_3.pas ( 1.26 килобайт ) Кол-во скачиваний: 283
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Женский

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


Спасибо тебе громаднейшее!!!!!!!!!!
Ты ангел! give_rose.gif


--------------------
°in the game of seduction, there is only one rule:never fall in love°
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 13.09.2025 14:59
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name