Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Задачи на Turbo Pascal 7.0

Автор: DroN_S
Дата сообщения: 15.05.2005 09:42
Получается не тот ответ что должен...

program one;
var
l,i,a,a1,a2:real;
begin
readln(l);
readln(i);
a1:=(l*i)*(l*i);//возвожу в квадрат
a2:=exp(1/4*ln(a1));//возвожу в степень
a:=2.6*a2;//домножаю на число
writeln(a:1:3);
readln;
end.

входные данные:
l=0.0003
i=15

Добавлено:
правильный ответ 1,325
Автор: YurikGL
Дата сообщения: 15.05.2005 09:46
>a2:=exp(1/4*ln(a1));//возвожу в степень

a2:=exp((1/4)*ln(a1));
или
a2:=exp(1/(4*ln(a1)));???
Автор: DroN_S
Дата сообщения: 15.05.2005 09:55
1/4 это степень в которую надо возвести число...

Добавлено:
Как извлечь число из корня четвёртой степени?
Автор: evle
Дата сообщения: 15.05.2005 12:19
DroN_S
Я не понял этой хохмы. Зачем возводить число в квадрат, а затем извлекать из него корень четвертой степени?
На всякий случай:
2,6*((0,0003*15)^2)^(1/4) = 0,174413302245
Твоя прога считает именно это. А что тебе надо было, я так и не понял.
YurikGL
/ и * имеют одинаковый приоритет, а значит деление выполняется раньше.
Автор: DroN_S
Дата сообщения: 15.05.2005 19:42

Цитата:
2,6*((0,0003*15)^2)^(1/4) = 0,174413302245


Вот, в этом то и дело, ответ получается не тот, должен получится 1,325...
Автор: YurikGL
Дата сообщения: 15.05.2005 19:49
>Вот, в этом то и дело, ответ получается не тот, должен получится 1,325...

0.0003*15=0.0045

0.0045^2=0.00002025

0.00002025^0.25=0.067082.....

0.067082.....*2.6=0.1744....

проверено на виндовом калькуляторе...


Автор: DroN_S
Дата сообщения: 15.05.2005 20:03
Вот так получается

program one;
var
l,i,a,a1,a2:real;
begin
readln(l);
readln(i);
a1:=sqrt(sqrt(exp(2*ln(l*i))));
a2:=sqrt(sqrt(a1));
a:=2.6*a2;
writeln(a:1:3);
readln;
end.
Автор: evle
Дата сообщения: 16.05.2005 03:55
DroN_S
Грандиозно. Считает эта конструкция
2,6*(0,0003*15)^(1/8) = 1,32319823282
А зачем было так извращаться, возводить в квадрат по общей формуле, после чего брать корень 16-й степени? Задача была посчитать это как можно медленнее?
Автор: DroN_S
Дата сообщения: 16.05.2005 05:51

Цитата:
Задача была посчитать это как можно медленнее?

Задача была просто посчитать, неважно каким способом...
Автор: evle
Дата сообщения: 16.05.2005 06:05
DroN_S
Так что посчитать то надо было? Формулой.
Автор: DroN_S
Дата сообщения: 16.05.2005 10:15

Цитата:
Формулой.


Это вырезка из очень большой тригонометрической формулы. а таких формул в задачи 10..
Автор: BagIra
Дата сообщения: 29.05.2005 16:58
Привет всем!
Ребята, у меня такая вот проблема: неожиданно задали написать программу-игрушку (любую, на любом языке программирования: Pascal, Delphi, C++...), главное - с использованием объектов. Исходников таких игр в Инете полно, но НИГДЕ НЕТ ОПИСАНИЯ для них. Пожалуйста, если у кого-нибудь есть описание алгоритма игрушки с объектами и ее исходник НЕ ДАЙТЕ ДЕВУШКЕ УМЕРЕТЬ, помогите, пожалуйста!!! Срочно нужно для курсовика. Мой имайл: marilyn1983@mail.ru.
Автор: max3do
Дата сообщения: 06.10.2005 16:06
Помогите плиззз
http://forum.ru-board.com/topic.cgi?forum=33&topic=5814#1
Автор: Alex_Ved
Дата сообщения: 31.10.2005 00:57
Может у кого есть решение подобной задачки (хотя бы мысли):

k=a+c

а = 0,3 - 0,18*(сумма от1 до 5)(b*Di)

с = 0,21 - 0,18*(сумма от1 до 3)(сумма от 1 до 3)(Pij – Di)

Исходные данные: D1=0.11; D2=0.13; D3= 0.18; D4=0.19; D5=0.21

Pij

0,11 0,10 0,08
Автор: DroN_S
Дата сообщения: 31.10.2005 14:08
Alex_Ved
Ты знаешь, из того что ты написал, ничего не понятно...
Опиши конкретно условия задачи!!!!
Автор: Dim2004
Дата сообщения: 31.10.2005 16:04

Цитата:
Опиши конкретно условия задачи!!!!

Угумс. И не забудь приписать размер вознаграждения - ибо заниматься этой ахинеей забесплатно можно разве что от незнаюкакого безделья...
Автор: OdesitVadim
Дата сообщения: 31.10.2005 18:46
DroN_S
Dim2004
Не флеймите, условия понятно, даже очень.
Alex_Ved
Первый клас школы
идея, полностью решения будеш делать сам

Код:
var d:array[1..5] of real;
p:array[1..3,1..3] of real;
i,j:integer;
k,a,b,c:real;
begin
//b - ввести наверное?

//ввод масивов с помощью readln или
//присвоение в стиле
D[1]=0.11; D[2]=0.13; D[3]= 0.18; D[4]=0.19; D[5]=0.21;
//вычисляем a
a:=0;
for i:=1 to 5 do a:=a+b*d[i];
а = 0,3 - 0,18*a;
//теперь с = 0,21 - 0,18*(сумма от1 до 3)(сумма от 1 до 3)(Pij – Di)
с:=0;
for i:=1 to 3 do
for j:=1 to 3 do
c:=c+P[i,j]*D[i];
c:=0,21 - 0,18*c;
//А вот и ответ
k:=a+c;
//Теперь выводим k
end;
Автор: Alex_Ved
Дата сообщения: 31.10.2005 18:49
DroN_S

Dim2004

Вообще-то я далек от паскаля, просто надо решить данный пример (k=a+c) с определенными дан-ными на языке паскаль. Меня конкретно интересует момент, где используется знак суммы, точ-нее хотелось бы увидеть пример использования двумерного массива (это где под знаком суммы надо использовать значения Pij, взятое из таблицы)

PS. – “Di” – это итый элемент, т.е. Di может принимать значения D1, D2, D3, D4, D5
- “сумма от1 до 3” – это знак суммы с приделами от 1 до 3

PPS. Что касается суммы вознаграждения, то я не прошу предоставить мне полное решение, мне только надо мысли или примеры похожих задач, тем более что это только один из кусочков более большой системы уравнений.



Добавлено:
OdesitVadim

Примного благодарен, не успел я ответить на предыдущеи сообщения как и ответ появился... Решения даже больше чем достаточно, и ещё раз спасибо.

Автор: SLAVAN_WAD
Дата сообщения: 01.11.2005 15:36
На "Играх гигантов" проводился интеллектуальный конкурс "Суперчисло", в котором необходимо было в десятичной записи натурального числа N поменять местами только две цифры, чтобы полученное число стало по возможности большим.
Помогите украинской команде "Maski.ua" выиграть этот конкурс.

Входные данные: В текстовом файле supernum.dat находится лишь одно число N. (0<N<1060000)
Исходные данные: В текстовый файл supernum.sol вывести одно число, полученное при перестановке цифр числа N.
Автор: isem
Дата сообщения: 01.11.2005 19:46
цыфры любые? или соседние?
найди самую большую цифру и поставь на первое место

Добавлено:
хелп плиз.
надо написать таблицу с полем в 510 символов, а строка только 255
Автор: OdesitVadim
Дата сообщения: 01.11.2005 20:17
isem
массив заводить прийдётся в стиле array [0..509] of char;
правда процедуры чтения/записи/вывода/обработки строк прийдётся реализовать вручную.
Можно и в сишном варианте реализовать.
А точно на паскале? Мож на Делфи перейти, там длиные строки разрешены.

Цитата:
надо написать таблицу с полем в 510 символов
- какую таблицу?
Автор: isem
Дата сообщения: 02.11.2005 08:32
[b]OdesitVadim[/b]

[q]А точно на паскале?[/q]

можно на любом языке


[q] какую таблицу?[/q]

Вообще-то надо описать и реализовать клас таблица и клас база
в таблице обязательно должны быть поля целого, действительного, строкового<=255,
строкового<=510 типов.
запись, чтение и редактирование таблиц в базе

у меня загвоздка с 510 символов

с Делфи не стыкался, на си могу попробовать если кто-то подскажет идею

спасибо
Автор: OdesitVadim
Дата сообщения: 02.11.2005 11:16
isem
На Делфи строки могут иметь размер до 4Гб (ну реально меньше, но ограничивается в принципе кол-вом свободной памяти), если только длиные строки не отключены (для этого есть директива, кажеться {$H+-}). Но по умолчанию они включены. На Делфи можно написать консольное приложения - отличия от турбопаскаля практически ничтожные.

Цитата:
на си могу попробовать если кто-то подскажет идею

А что подсказывать? как со строками работать?
Какой твой "родной" язык програмирования?
Автор: SLAVAN_WAD
Дата сообщения: 02.11.2005 14:50
Подскажыте что надо в задаче зделать!!!Я не пойму!!!


На "Играх гигантов" проводился интеллектуальный конкурс "Суперчисло", в котором необходимо было в десятичной записи натурального числа N поменять местами только две цифры, чтобы полученное число стало по возможности большим.
Помогите украинской команде "Maski.ua" выиграть этот конкурс.

Входные данные: В текстовом файле supernum.dat находится лишь одно число N. (0<N<1060000)
Исходные данные: В текстовый файл supernum.sol вывести одно число, полученное при перестановке цифр числа N
Автор: Alex_Ved
Дата сообщения: 02.11.2005 23:32
Подскажите ещё немножко...

Y = {b*sin(a*x^3+b) – e^(-b*x+z), если : a^2-b>sqrt(x^3)
{a*z-ln(a*x+b), если : |a^2+b|<=sqrt(x^3), если : x^2*a>=b+a
Первое и второе уравнение объединены в систему.
Известно: a=0.29; b=0.1; z=0.11
Автор: isem
Дата сообщения: 05.11.2005 10:54
OdesitVadim

Спасибо
буду пробовать Делфи
Автор: somereal
Дата сообщения: 18.11.2005 22:21
Люди помогите написать на Дельфях прогу по сложению 2х многочленов и их дифференциированию при помощи списков!ПОЖАЛУЙСТА!
Автор: Londo
Дата сообщения: 20.11.2005 13:17
Плиз помогите. Нужен алгоритм приближенного вычисления функций методом итераций - (x)^(1/3), 1/((x)^(1/3)).
Автор: Anub
Дата сообщения: 29.11.2005 07:53
Привет! Помогите чайнику лабу по паскалю написать пжст
Тема: типизированные файлы
Вот условие:
База "Климат" (14 записей)
Поля:
1. год наблюдения
2. абсолютный максимум температуры
3. абсолютный минимум температуры
4. средняя температура в год
5. число дней без осадков
6 код местности
Запросы:
1. напечатать список кодов местности с абсолютным минимумом температуры не более -18C и годом наблюдений начиная с 1990
2. упорядочить записи в базе по возрастанию числа дней без осадков (значения 5 поля)

Вот вторая часть лабы:
Текстовый файл содержит записи, структура их такова: ФИО сотрудника (15 байт), номер его телефона (8 байт). Записать в другой файл телефон сотрудника с фамилей Арутюнов.

Тому кто сделает обещаю денежное вознаграждение
Стучите в асю 233193717
Автор: AMDUser
Дата сообщения: 04.12.2005 05:47
Помогите с решением задачи на Turbo Pascal or Delphi. Очень нужно!!!!

Условие
Прямоугольник со сторонами, параллельными осям координат, задан координатам двух противоположных вершин (x1,y1) и (x2,y2).
Отрезок задан координатами вершин (u1,v1) и (u2,v2).
Требуется вычислить длину части отрезка, лежащего внутри прямоугольника.

Входной файл
Содержит вешественные числа x1 y1 x2 y2 u1 v1 u2 v2.

Выходной файл
Содержит единственное вещественное число - искомую длину.

Пример
Входной файл Выходной файл
0 0 60 50 -10 20 80 20 60

Огромное спасибо за помощь!!!

Страницы: 1234567891011121314

Предыдущая тема: VC++ vs. Delphi


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.