Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Решение задач на Pascal. Форум 3.
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 ]
Модераторы: paradise, KMA
  

Dale



Участник

nastja

Ты наверное не понимаешь, что такое функция - она у тебя объявлена, но не вызвана и даже не закрыта. Объясняю:

1)В pascal есть встроенные функции, например sin

Code Sample:
 
var x:real;
begin
x:=sin(3.14);
writeln(x);
readln;
end.



Этот код присваивает переменной x значение функции sin(3.14) и выводит ее на экран.

2)В pascal встроено много функций, но ингода возникает необходимость написать собственную. Например, нет функции, вычисляющей тангенс. Но тангенс мы можем вычислить как синус на косинус. Давай напишем ее:

Code Sample:
 
var x:real;

function tan(x:real):real;
begin
tan:=sin(x)/cos(x);
end;


begin
x:=tan(3.14);
writeln(x);
readln;
end.




Вот так это выглядит. Функция объявляется до начала основной програмы. В данном случае она принимает аргумент x типа реал и возвращает значение типа real .


3)А теперь по поводу твоей программы. Там нигде не вызывается функция ArcCos . Более того, функции ArcCos не присваивается никакого значения. Помимо прочего, в программе  отсутствует тело программы (то ест ьпросто объявлена функция и все).

Надеюсь, эта информация тебе поможет. Удачи!


(Сообщение отредактировал Dale 19 фев. 2011 11:15)

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 16 фев. 2011 6:14 | IP
Dale



Участник

Deleted

(Сообщение отредактировал Dale 16 фев. 2011 6:16)

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 16 фев. 2011 6:15 | IP
nastja



Новичок

Dale спасибо большое.: )

Всего сообщений: 4 | Присоединился: октябрь 2010 | Отправлено: 16 фев. 2011 19:54 | IP
Olechka93


Новичок

Помогите, пожалуйста!!!
Необходимо написать программу, которая совершает действия над матрицами(умножение, сложение, вычитание, нахождение наибольшего из 2 матриц), вообщем это легко..
Сложность в том, что необходимо создать меню, с помощью которого не нужно ничего, кроме как нажимать на кнопки в нем(вывод 1 матрицы, 2ой матрицы, а также все действия над ними).
Подскажите, как именно сделать это меню, и какие библиотеки при этом необходимо запускать???
Заранее спасибо..

Всего сообщений: 5 | Присоединился: март 2011 | Отправлено: 18 марта 2011 22:27 | IP
elenalapina


Новичок

сформировать целочисленный двумерный массив Matrix параметры которого задаются вводом склавиатуры. инициализацию массива производить с помощью датчика псевдослучайных чисел. по сформированному двумерному массиву создать два одномерных массива А и В, где А - количество нулевых элементов строки Matrix, В- ближайшие к среднему значению элементы столбца Matrix, А отсортировать по убыванию, В по возрастанию. результаты сортировки наложить на Matrix, трансформировав его в соответствии с результатами сортировки.
массив А уже создан. помогите написать программу дальше
PROGRAM massiv;
 Uses
   Crt;

 Type
   TIndex=1..20;
   TMatrix=array [TIndex, TIndex] of Integer;
   TVector=array [TIndex] of Integer;

 Var
   Matrix:TMatrix;
   A,B:TVector;
   m,n:TIndex;
   LV,UV:Integer;

 Procedure Sleep;
   Var Ch:Char;
 Begin
   While KeyPressed do Ch:=ReadKey;
   Repeat until KeyPressed;
   Ch:=ReadKey
 End;

 Procedure Init;
   Var i,j:TIndex;
 Begin
   ClrScr;
   Write('m > ');ReadLn(m);
   Write('n > ');ReadLn(n);
   Write('LV > ');ReadLn(LV);
   Write('UV > ');ReadLn(UV);
   WriteLn('------------- Ishodnik ---------');
   Randomize;
   For i:=1 to m do begin
     For j:=1 to n do begin
       Matrix[i,j]:=LV+Random(UV-LV+1);
       Write(Matrix[i,j]:4)
     end;
     WriteLn
   end;
 End;

 Procedure CreatA;
   Var i,j:TIndex;
 Begin
   For i:=1 to m do begin
     A:=0;
     For j:=1 to n do
       If Matrix[i,j]=0 then Inc(A)
   end;
   WriteLn('  ----- Ish A ----');
   For i:=1 to m do Write(A:4);
   WriteLn;
   Sleep
 End;



BEGIN
 Init;
 CreatA;
END.

Всего сообщений: 1 | Присоединился: март 2011 | Отправлено: 27 марта 2011 18:12 | IP
hacker172



Новичок

здрасте, вот такая задача:
составить программу нахождения площади произвольного треугольника по трем его сторонами (формула Герона)
S = √ p (p-a) (p-b) (p-c)
p = a + b + c / 2

Всего сообщений: 3 | Присоединился: апрель 2011 | Отправлено: 9 апр. 2011 0:21 | IP
Dale



Участник



Помогите, пожалуйста!!!
Необходимо написать программу, которая совершает действия над матрицами(умножение, сложение, вычитание, нахождение наибольшего из 2 матриц), вообщем это легко..
Сложность в том, что необходимо создать меню, с помощью которого не нужно ничего, кроме как нажимать на кнопки в нем(вывод 1 матрицы, 2ой матрицы, а также все действия над ними).
Подскажите, как именно сделать это меню, и какие библиотеки при этом необходимо запускать???
Заранее спасибо..



Меню? Легко!
http://exir.ru/cgi-bin/ikonboard/topic.cgi?forum=3&topic=242&start=670

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 10 апр. 2011 10:01 | IP
Dale



Участник


здрасте, вот такая задача:
составить программу нахождения площади произвольного треугольника по трем его сторонами (формула Герона)
S = √ p (p-a) (p-b) (p-c)
p = a + b + c / 2



И в чем же проблема?

Code Sample:
 
var a,b,c,p:real;
begin
readln(a,b,c);
p:=(a+b+c)/2;

if(p*(p-a)*(p-b)*(p-c))<0 then begin
writeln('Печалька');
readln;
halt;{выход из программы}
end;

writeln(sqrt(p*(p-a)*(p-b)*(p-c)));
readln;
end.


Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 10 апр. 2011 10:10 | IP
Lerikalera


Новичок

помогите пожалуйста решить

1.В заданих масивах Y(9) та C(15) знайти найбільше значення, що зустрічається в масиві після відкидання з нього всіх елементів, які дорівнюють максимальному елементу. Вивести вихідний масив, максимальне значення та найбільше значення з залишених.

2.Обчислити та вивести середнє арифметичне сум індексів рядків та стовпчиків додатних елементів заданої матриці М(4,3).

3.Задано матрицю В(4,4). Сформувати новий вектор з мінімальних елементів стовпчиків. В цьому векторі обчислити суму та кiлькiсть додатнiх елементів. Вивести сформовану матрицю, суму та кiлькiсть додатних елементів.

Всего сообщений: 2 | Присоединился: апрель 2011 | Отправлено: 10 апр. 2011 15:15 | IP
Lerikalera


Новичок

это нужно сделать через процедуры

Всего сообщений: 2 | Присоединился: апрель 2011 | Отправлено: 10 апр. 2011 15:16 | IP

Отправка ответа:
Имя пользователя   Вы зарегистрировались?
Пароль   Забыли пароль?
Сообщение

Использование HTML запрещено

Использование IkonCode разрешено

Смайлики разрешены

Опции отправки

Добавить подпись?
Получать ответы по e-mail?
Разрешить смайлики в этом сообщении?
Просмотреть сообщение перед отправкой? Да   Нет
 

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 ]

Форум работает на скрипте © Ikonboard.com