Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
pozitiv89
1 / 1 / 0
Регистрация: 20.11.2013
Сообщений: 44
1

Проблема с циклом. Найти площадь фигуры ограниченной линиями.

20.11.2013, 00:37. Просмотров 799. Ответов 10
Метки нет (Все метки)

у меня есть задача в которой нужно найти площадь фигуры ограниченной линиями
вот какой код у меня получается но ошибка в самой площади у неё какое то неверное значение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <math.h>
#include <stdio.h>
#include <windows.h>
int main()
{
  char buf[80];
  double x,dx,f1,f2,s;
  s=0;
  x=0;
dx=1.0e-5;
f1=pow(x,3);
f2=1/pow(x,0.5);
for(;f1<f2;x=x+dx)
 {
   f1=pow(x,3);
   f2=1/pow(x,0.5);
   s=s+(f2-f1)*dx;
 }
  sprintf(buf," s=%6.2f\n x=%6.2f\n f1=%6.2f\n f2=%6.2f\n", s, x, f1, f2);
  printf("%s",buf);
  return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2013, 00:37
Ответы с готовыми решениями:

Вычислить площадь фигуры ограниченной линиями
Ребят помогите плс!Задачка никак не получается((( Постановка задачи. Вычислить площадь фигуры...

Найти площадь фигуры, ограниченной точками
Помогите пожалуйста. Надо срочно сделать на С две проги: 1. программа которая по трем...

Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями
Использовать метод прямоугольников. Для построения прямоугольника использовать правый конец...

Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями
1)Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями.В...

Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями
Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями. Для...

10
bars268
7 / 7 / 3
Регистрация: 26.01.2013
Сообщений: 59
Завершенные тесты: 1
20.11.2013, 00:45 2
Вместо такого цикла for попробуй
C++
1
2
3
4
5
6
while (f1 < f2) {
    x=x+dx;
    f1=pow(x,3);
    f2=1/pow(x,0.5);
    s=s+(f2-f1)*dx;
}
1
pozitiv89
1 / 1 / 0
Регистрация: 20.11.2013
Сообщений: 44
20.11.2013, 18:27  [ТС] 3
не, спросил не прокатит, нужно с циклом for, дали подсказку что должно быть два цикла
0
Изображения
 
castaway
Эксперт С++
4934 / 3039 / 455
Регистрация: 10.11.2010
Сообщений: 11,119
Записей в блоге: 10
Завершенные тесты: 1
20.11.2013, 20:33 4
От нуля до единицы первая функция, от единицы до двух вторая. Результаты складывай.
0
pozitiv89
1 / 1 / 0
Регистрация: 20.11.2013
Сообщений: 44
20.11.2013, 23:42  [ТС] 5
Цитата Сообщение от castaway Посмотреть сообщение
От нуля до единицы первая функция, от единицы до двух вторая. Результаты складывай.
а можно поподробней разъяснить, я плохо вас понимаю, точнее я понимаю, но не знаю как это должно выглядеть
0
bars268
7 / 7 / 3
Регистрация: 26.01.2013
Сообщений: 59
Завершенные тесты: 1
21.11.2013, 14:35 6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
S=0 //площадь
for (int i=0;i<1;i+=dx) {
    x=x+dx;
    f1=pow(x,3);
    f2=1/pow(x,0.5);
    s+=(f2-f1)*dx;
}
for (int i=1;i<=2;i+=dx) {
    x=x+dx;
    f1=pow(x,3);
    f2=1/pow(x,0.5);
    s=s+(f2-f1)*dx;
}
Примерно такие циклы. С телами циклов я не заморачивался и просто скопировал, если что не так исправляйте.
0
BigProgrammer
38 / 38 / 8
Регистрация: 20.07.2013
Сообщений: 105
21.11.2013, 18:19 7
Цитата Сообщение от pozitiv89 Посмотреть сообщение
не, спросил не прокатит, нужно с циклом for, дали подсказку что должно быть два цикла
У вас на картинке http://www.cyberforum.ru/cgi-bin/latex.cgi?{f}_{2}(x)={x}^{-0.5}, а в коде http://www.cyberforum.ru/cgi-bin/latex.cgi?{f}_{2}(x)={x}^{0.5}.
0
pozitiv89
1 / 1 / 0
Регистрация: 20.11.2013
Сообщений: 44
23.11.2013, 13:10  [ТС] 8
Цитата Сообщение от bars268 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
S=0 //площадь
for (int i=0;i<1;i+=dx) {
    x=x+dx;
    f1=pow(x,3);
    f2=1/pow(x,0.5);
    s+=(f2-f1)*dx;
}
for (int i=1;i<=2;i+=dx) {
    x=x+dx;
    f1=pow(x,3);
    f2=1/pow(x,0.5);
    s=s+(f2-f1)*dx;
}
Примерно такие циклы. С телами циклов я не заморачивался и просто скопировал, если что не так исправляйте.
а что означают s+ и i+
0
bars268
7 / 7 / 3
Регистрация: 26.01.2013
Сообщений: 59
Завершенные тесты: 1
23.11.2013, 14:25 9
Цитата Сообщение от pozitiv89 Посмотреть сообщение
а что означают s+ и i+
s+ это площадь, i - итератор цикла
0
pozitiv89
1 / 1 / 0
Регистрация: 20.11.2013
Сообщений: 44
23.11.2013, 15:22  [ТС] 10
ясно спасибо, программа работает...вроде как
0
bars268
7 / 7 / 3
Регистрация: 26.01.2013
Сообщений: 59
Завершенные тесты: 1
24.11.2013, 01:09 11
Цитата Сообщение от pozitiv89 Посмотреть сообщение
ясно спасибо, программа работает...вроде как
Советовал бы для начала подучить основы программирования. А то, судя по сообщениям, с ним у вас совсем туго
0
24.11.2013, 01:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.11.2013, 01:09

Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями
1)Составить программу приближенного вычисления площади фигуры, ограниченной заданными линиями....

Вычислить площадь фигуры ограниченной заданными функциями
Доброго времени суток, программисты :) Прошу помощи переделать программу из MatLAB, в С++ Заранее...

Площадь фигуры ограниченной кусочно-линейной функцией и осью абсцисс
Нужно написать программу, которая бы методом трапеций вычисляла площадь фигуры ограниченной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru