![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Carola |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 17 Пол: Женский Репутация: ![]() ![]() ![]() |
Исправьте пожалуйста ошибки в прогах,если они есть.
У меня не работает паскаль и я буду очень признательна,если кто-нибудь закинет мне в него проги и даст ссылочки.ПЛЗ! 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 - 24.12.2005 23:34 -------------------- °in the game of seduction, there is only one rule:never fall in love°
|
volvo |
![]()
Сообщение
#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 Я не знаю, что нужно преподавателю, но они обе прекрасно работают... |
Carola |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 17 Пол: Женский Репутация: ![]() ![]() ![]() |
Я в тебе не сомневалась даже.....Наверное это всё паскаль...Что-то с ним не то..с ошибкой у меня=(
Ты не мог бы закинуть мне в Паскаль...Очень прошу. А вот ещё одна задача. Препод по ней написал вот что - *меня не устраивает алгоритм с применением EXIT. это противоречит канонам программирования.* ![]() Ввести размерность матрицы(двумерной) и значения ее элементов., Построить вектор В, где В(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-го мая. ![]() Сообщение отредактировано: Carola - 24.12.2005 23:40 -------------------- °in the game of seduction, there is only one rule:never fall in love°
|
volvo |
![]()
Сообщение
#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;
И, заодно, спроси у своего преподавателя, что он думает об использовании лишних переменных в программе, хорошо? |
Carola |
![]()
Сообщение
#5
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 17 Пол: Женский Репутация: ![]() ![]() ![]() |
Закинуть в паскаль - я имею в виду набить эту программе в паскале......и прислать мне...просто у меня паскаль не работает=(а мы отправляем программы в паскале...вот.....
Так прога правильная?Я сама не поняла вообще к чему он это.Заколебал придираться..Ему лишь бы слово вставить,а по уму о нас мало отличается..Чесслово..Ты в плане программирования горазно лучше. Ага..... Так сможешь мне набить в паскале...плз. ![]() -------------------- °in the game of seduction, there is only one rule:never fall in love°
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Carola, просто скопируй программу в Notepad, и сохрани с расширением PAS... У меня с кириллицей проблемы...
|
Carola |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 17 Пол: Женский Репутация: ![]() ![]() ![]() |
Carola, просто скопируй программу в Notepad, и сохрани с расширением PAS... У меня с кириллицей проблемы... Сейчас попробуююю ![]() А если нет,то тект изменю на латинские буквы..Ага. Notepad в смысле Блокнот? -------------------- °in the game of seduction, there is only one rule:never fall in love°
|
Carola |
![]()
Сообщение
#8
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 17 Пол: Женский Репутация: ![]() ![]() ![]() |
Не получается=(((((((
Я сделала всё латинскими буквами,так сможешь????????????????? -------------------- °in the game of seduction, there is only one rule:never fall in love°
|
volvo |
![]()
Сообщение
#9
|
Гость ![]() |
Ну, вот эти 3 PAS-файла...
Прикрепленные файлы ![]() ![]() ![]() |
Carola |
![]()
Сообщение
#10
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 17 Пол: Женский Репутация: ![]() ![]() ![]() |
Спасибо тебе громаднейшее!!!!!!!!!!
Ты ангел! ![]() -------------------- °in the game of seduction, there is only one rule:never fall in love°
|
![]() ![]() |
![]() |
Текстовая версия | 27.07.2025 5:39 |