Тема: Обчислення формули
Потрібна програма,яка б виводила результак за такою формолую : F:=a*Log за основою а від числа (a+b)^2+cos^2(b/c)
Я намагався щось зробити,проте неправильно,допоможыть будь-ласка....Напишіть програму або вкажіть на помилки.
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → Pascal/Delphi → Обчислення формули
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Потрібна програма,яка б виводила результак за такою формолую : F:=a*Log за основою а від числа (a+b)^2+cos^2(b/c)
Я намагався щось зробити,проте неправильно,допоможыть будь-ласка....Напишіть програму або вкажіть на помилки.
Я намагався щось зробити
Будь-ласка код в студію
проте неправильно
А ми подивимось, і поможемо
Про картинку. В чому саме проблема?
Upd. Я думаю що не працює бо не знає функцій cos, log, ... etc - Треба додати секцію
Uses
Math;
magnevitis написав:Я намагався щось зробити
Будь-ласка код в студію
magnevitis написав:проте неправильно
А ми подивимось, і поможемо
Про картинку. В чому саме проблема?
Upd. Я думаю що не працює бо не знає функцій cos, log, ... etc - Треба додати секцію
Uses Math;
program rrr;
var f,a,b,c :integer;
BEGIN
readln (a,b,c);
f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c);
writeln (f);
end.
magnevitis
Integer варто замінити на Real, бо f буде дробовим числом.
Uses приберіть
Uses приберіть
Нічого не змінилось...те саме
код в студію, та перелік помилок
Намагався так
program rrr;
var f,a,b,c :real;
math;
BEGIN
readln (a,b,c);
f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c);
writeln (f);
end.
так
program rrr;
var f,a,b,c :real, math;
BEGIN
readln (a,b,c);
f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c);
writeln (f);
end.
і навіть так
program rrr;
var f,a,b,c :real math;
BEGIN
readln (a,b,c);
f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c);
writeln (f);
end.
А код помилки не дає(чи я не знаю як подивитись)(У мене Windows 7. Free Pascal)
А так?
program rrr;
var f,a,b,c :real;
BEGIN
readln (a,b,c);
f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c);
writeln (f);
end.
▼Прихований текстА так?
program rrr; var f,a,b,c :real; BEGIN readln (a,b,c); f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c); writeln (f); end.
Так,дякую велике,помилка була в типі данних...integer для цьго явно не пыдходив
magnevitis
Здогадуюсь, що підійшов Extended, Double чи Single. Real мабуть пройшов би, якщо між першою та другою строкою вставити {$MODE TP}
▼Прихований текстА так?
program rrr; var f,a,b,c :real; BEGIN readln (a,b,c); f:=a*ln((a+b)*(a+b))/ln(a)+cos(b/c)*cos(b/c); writeln (f); end.
А якщо (a+b)=0 або (ln(a)+cos(b/c)*cos(b/c))=0?
Комп'ютер за вас рівняння розв'язувати не буде. Ви спочатку самі мусите їх розв'язати, а за допомогою комп'ютера уже зможете різні значення в розв'язок підставляти.
Комп'ютер за вас рівняння розв'язувати не буде. Ви спочатку самі мусите їх розв'язати, а за допомогою комп'ютера уже зможете різні значення в розв'язок підставляти.
Комп'ютер за вас рівняння розв'язувати не буде. Ви спочатку самі мусите їх розв'язати, а за допомогою комп'ютера уже зможете різні значення в розв'язок підставляти.
Я маю на увазі, чи не повинна програма (див. повідомлення 12) видавати відповідні повідомлення, чи достатньо повідомлень про помилку, наприклад 207 або 200? Для прикладу, помилка 207 з’явиться при введених значеннях a=3, b=-3.
Усе залежить від поточних потреб, якогось універсального рецепту не існує. Якщо пишете програму для себе, на один раз, то можна не морочити собі голову. Якщо програмою будуть користуватися інші люди, тоді звичайно варто подбати про перевірку введених значень, та змістовні повідомлення про помилки. У великих програмах часто винятки використовують: https://uk.wikipedia.org/wiki/%D0%9E%D0 … 1%96%D0%B2
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися