Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 17.01.2011, 21:10   #1 (permalink)
aizkil
Новичок
 
Регистрация: 17.01.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Задачи на паскале.

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

№1
Ввести с клавиатуры x,y и вычислить, используя метод промежуточного аргумента:
z=2^sin(x+5y)-e^-x-5y

№2
Вычислить вводя соответствующую функцию в разделе Function:
y=ArcCos(ArcCos(x))-ArcCos(x^3)

№3
Вычислить для треугольника ABC все стороны, все углы(в градусной мере), периметр и площадь, если известны сторона BC и углы BAC, ACB.
Замечания: Программа должна содержать ввод известных величин с клавиатуры, вычисление неизвестных с использованием раздела Function и вывод результатов вычисления на экран.

№4
Ввести некоторое число N. Определить является ли оно числом:
Неотрицательным? Кратным 6? Меньшим -1? Степенью 4?

№5
Составить программу, которая определяет для двух вводимых натуральных чисел M и N их наибольший делитель.

№6
Вычислить максимальную сумму квадратов натуральных чисел, кратных (3,6,9...), меньшую 3000.
Замечание: Провести решение 2мя способами - используя цикл с предусловием WHILE_DO и цикл с полусловием REPEAT_UNTIL.
aizkil вне форума   Ответить с цитированием

Старый 17.01.2011, 21:10
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Прошу вас, обратите внимание на схожие обсуждения

Три задачи в Паскале
Три задачи на Паскале
Задачи на Паскале
Три задачи на Паскале

Старый 18.01.2011, 08:33   #2 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Цитата:
Сообщение от aizkil Посмотреть сообщение
№4
Ввести некоторое число N. Определить является ли оно числом:
Неотрицательным? Кратным 6? Меньшим -1? Степенью 4?
Код:
var
n,m:integer;
begin
write ('n=');
readln (n);
if n>0 then writeln ('НЕ отрицательное');
if n mod 6=0 then writeln ('кратное 6') else writeln ('Не кратное 6');
if n<-1 then writeln ('меньше -1') else writeln ('больше -1');
m:=1;
repeat
m:=m*4;
until m>=n;
if m=n then writeln ('степень 4') else writeln ('НЕ степень 4');
readln
end.
shrek=) вне форума   Ответить с цитированием
Старый 18.01.2011, 08:42   #3 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Цитата:
Сообщение от aizkil Посмотреть сообщение
№5
Составить программу, которая определяет для двух вводимых натуральных чисел M и N их наибольший делитель.
Код:
var M, N: integer;
begin
writeln('Введите М и N');
readln(M, N);
while M<>N do
begin
if M>N
then M:=M-N
else N:=N-M
end;
write('Н0Д=',М)
end.
shrek=) вне форума   Ответить с цитированием
Старый 18.01.2011, 08:58   #4 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Цитата:
Сообщение от aizkil Посмотреть сообщение
№2
Вычислить вводя соответствующую функцию в разделе Function:
y=ArcCos(ArcCos(x))-ArcCos(x^3)
Думаю решение такое:
Код:
var
x,y:real;
function arccos(x:real):real;
begin
arccos:=arctan(sqrt(1-sqr(x))/x);
end;
function func(x:real):real;
var y:real;
begin
y:=arccos(arccos(x)-arccos(sqr(x)*x));
func:=y;
end;
begin
write ('x=');
read(x);
func(x);
write ('y=',y);
readln
end.
shrek=) вне форума   Ответить с цитированием
Старый 18.01.2011, 10:49   #5 (permalink)
Vladimir_S
Специалист
 
Аватар для Vladimir_S
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 26,357
Сказал(а) спасибо: 289
Поблагодарили 507 раз(а) в 165 сообщениях
Репутация: 91953
По умолчанию

Shrek, я думаю, такое
Код:
function arccos(x:real):real;
begin
  arccos:=arctan(sqrt(1-sqr(x))/x);
end;
задание функции arccos - "не есть хорошо", и вот почему:
1. При х=0 возникнет ошибка деления на ноль, а должно быть возвращено Pi/2.
2. Как при х=1, так и при х=-1 такая функция вернет arccos(х)=0, в то время как должно быть при x=1 arccos(x)=0, a при x=-1 arccos(x)=Pi.
Могу предложить такой вариант (он "зашит" в мои библиотеки):
Код:
function ArcCos(X:Real):Real;
BEGIN
    IF ROUND(X*10000)=10000 THEN ArcCos:=0 ELSE
    IF ROUND(X*10000)=-10000 THEN ArcCos:=Pi ELSE
    ArcCos:=(Pi/2)-ArcTan(X/SQRT(1-X*X));
END;
__________________
With Mozilla Firefox - straight to communism!
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 18.01.2011, 11:10   #6 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Цитата:
Сообщение от aizkil Посмотреть сообщение
№1
Ввести с клавиатуры x,y и вычислить, используя метод промежуточного аргумента:
z=2^sin(x+5y)-e^-x-5y
Возможно это должно выглядеть вот так:
Код:
var
a,x,y,z:real;
function func(x,y:real):real;
begin
a:=x+5*y;
z:=exp(ln(2)*sin(a)-exp(ln(2.7)*(-a)));
end;
begin
write ('x=');
readln(x);
write ('x=');
readln(x);
func(x,y);
write ('z=',z);
readln
end.
shrek=) вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 13:43.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.