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

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

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

 
 Ответить  Открыть новую тему 
> процедуры/функции, массивы и почти готовая сортировка
Leito
сообщение 25.05.2008 9:25
Сообщение #1





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

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


Цитата
______.JPG - напишите плз первую и проверьте вторую, правильно решил или накосячил:
Код

program 2;
const n=5;
var a: array [1..n] of real;
i,k:integer;
x:real;
begin
writeln('vvedite chiclo');
readln(x);
writeln('vvedite massiv');
for i:=1 to n do
begin
read(a[i]);
if (a[i]<x) then k:=i; end;
readln;
writeln('k - ',k+1);
readln;
end.

Цитата
work.JPG - задачу решил но нужно указывать время (не целые числа) - исправьте плз как надо
Код
Program Premier;
Var B: array[1..7] of integer;
    P: array[1..7] of string;
    I,K,X: integer;
    St:string;
Begin
{nazvani9 i vremya}
       Writeln('nazvanie i vremya');
    For I:=1 to 7 do
    Begin
    Write(I,' nazvanie: ');
        Readln(P[I]);
        Write('vremya: ');
        Readln(B[I]);
    End;
{sort}
For K:=1 to 6 do
    For I:=1 to 7-K do
       If (B[I] > B[I+1]) then
       Begin
       X:=B[I];
       B[I]:=B[I+1];
       B[I+1]:=X;
       St:=P[I];
       P[I]:=P[I+1];
       P[I+1]:=St
       End;
{vivod}
writeln('Raspisanie: nazvanie poezda, vremya');
For I:=1 to 7 do
begin
    For K:= 1 to 9-length(P[I]) do
        P[I]:=P[I]+' ';
{vivod: mesto, poezd vremya}
       Writeln(I:2,' ',P[I]:18, B[I]:2)
    end;
        readln;
End.

fonkc_proc.doc - надо решить задачку процедурами и функциями - незнаю даже примерно как, помогите плз
заранее благодарю


Эскизы прикрепленных изображений
Прикрепленное изображение Прикрепленное изображение

Прикрепленные файлы
Прикрепленный файл  fonkc_proc.doc ( 17 килобайт ) Кол-во скачиваний: 146
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
sintanial
сообщение 25.05.2008 10:57
Сообщение #2


Пионер
**

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

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


На счет fonkc_proc.doc . А в чем проблема ? Норма матрицы это как я помню, столбец который имеет максимальную сумму эллементов по модулю( тоесть ищешь сумму всех элементов одного столбца, второго и т.д. и ишешь из них макс сумму- это и будет норма одной матрицы( каждый элемент при складывании ставишь по модулю)). Вот ищешь три нормы трех матриц. у тебя получится три числа, это и будет твой вектор. А потом ищешь как по формуле которая тебе дана, длину вектора.

З.ы. Посмотри на первой странице, в задачах, тута где то я помогал рушить как искать норму матрицы

Сообщение отредактировано: sintanial - 25.05.2008 11:04
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 25.05.2008 11:04
Сообщение #3


Гость






Цитата
Норма матрицы это как я помню, столбец который имеет максимальную сумму эллементов по модулю
Это смотря какая норма. Их как минимум 3, так что надо уточнить, какую искать...
 К началу страницы 
+ Ответить 
sintanial
сообщение 25.05.2008 11:07
Сообщение #4


Пионер
**

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

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


Ну там же в док файле в конце вроде бы 1<=i<=m - вроде бы m это столбцы ?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Leito
сообщение 25.05.2008 11:22
Сообщение #5





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

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


Цитата(sintanial @ 25.05.2008 11:07) *

Ну там же в док файле в конце вроде бы 1<=i<=m - вроде бы m это столбцы ?

i - строки, j - столбцы...как я понял м нужно вводить с клавиатуры(ну или задать заранее) для определения количества строк...или я вапще не в ту сторону думаю...напишите плз, я уже дня два пытаюсь сделать
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
sintanial
сообщение 25.05.2008 17:57
Сообщение #6


Пионер
**

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

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


ну обычно обозначают матрицу NxM где n-строки m- столбцы =)
Вот что то на подобие этого твоя задача

Type matr=array[1..4,1..4] of real ;
function max(const a:matr):real;
var s,max1:real; i,j:integer;
begin
j:=1;
max1:=0;
repeat
begin
s:=0;
for i:=1 to 4 do
s:=s+abs(a[i,j]);
if s>max1 then
max1:=s;
inc(j)
end;
until j>3;
max:=max1;
end;

function mat(var a:matr):real;
var i,j:integer;
begin
writeln('vvod matrici:');
for i:=1 to 4 do
for j:=1 to 3 do
read(a[i,j]);
end;
var a,b,c:matr;
i,j:integer;
s:real;
s1,s2,s3,max1,vmax:real;
m,n:integer;
begin
mat(a);
s1:=max(a);
mat(b);
s2:=max(b);
mat©;
s3:=max©;
s:=sqrt(sqr(st1)+sqr(st2)+sqr(st3))
writeln(s);
end.


Во первых писал здесь, не знаю пашеть или нет(так как из меня не кудышный пока программист, и ошибки где то полюбому допускаю =) ), если нет то я думаю сам сможешь отредактировать, и сделать как тебе нужно =) !

Сообщение отредактировано: sintanial - 25.05.2008 18:01
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Leito
сообщение 25.05.2008 19:11
Сообщение #7





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

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


вот что я родил с этой задачей за три дня
Код
const m=4;
      n=3;
type
    massiv = array[1..m,1..n] of real;
var A,B,C:massiv;
i,j:integer;
sym,nopmA,nopmB,nopmC:real;
function c4etnopm(mas:massiv):real;
var i,j:integer;
h:real;
begin
h:=0;
for i:=1 to m do
for j:=1 to n do
h:=h+abs(mas[i,j]);
c4etnopm:=h;
end;
begin
writeln('vv matricbI A');
for i:=1 to m do
for j:=1 to n do
read(A[i,j]);
writeln('vv matricbI B');
for i:=1 to m do
for j:=1 to n do
read(B[i,j]);
writeln('vv matricbI C');
for i:=1 to m do
for j:=1 to n do
read(C[i,j]);  {
for i:=1 to m do
begin
for j:=1 to n do
write(A[i,j]:0:0,' ');
writeln;
end;
for i:=1 to m do
begin
for j:=1 to n do
write(B[i,j]:0:0,' ');
writeln;
end;
for i:=1 to m do
begin
for j:=1 to n do
write(C[i,j]:0:0,' ');
writeln;
end;          }
nopmA:=c4etnopm(A);
nopmB:=c4etnopm(B);
nopmC:=c4etnopm(C);
sym:=sqrt(nopmA*nopmA+nopmB*nopmB+nopmC*nopmC);
writeln('Hopma matric: ',sym:4:1);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
sintanial
сообщение 25.05.2008 21:45
Сообщение #8


Пионер
**

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

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


Отформатируйте задачу нормально плиз, читать код не возможно =) . И по возможности, код в паскалевские теги ставь, так как то легче смотреть =)

Сообщение отредактировано: sintanial - 25.05.2008 21:46
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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