Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 5.00
Dark-Fenir
0 / 0 / 0
Регистрация: 13.08.2012
Сообщений: 3
#1

Нахождение среднего арифметического и геометрического двух чисел - C++

13.08.2012, 06:21. Просмотров 1857. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Написал программу для нахождения среднего арифметического и геометрического двух чисел
http://www.cyberforum.ru/cpp-beginners/thread865756.html
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
int main (void)
{
    double a , b , Sr;
    printf("a = ");
    scanf("%f", &a );
    printf("b = ");
    scanf("%f", &b );
    Sr = (a + b) / 2;
    printf("Srednee arifmeticheskoe 'a' i 'b' ravno %f \n", Sr );
    Sr = sqrt(a * b);
    printf("Srednee geometricheskoe 'a' i 'b' ravno %f \n", Sr );
    getch();
    return 0;
}
но результат выдает по нулям.
Подскажите где я ошибся.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.08.2012, 06:21
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Нахождение среднего арифметического и геометрического двух чисел (C++):

Нахождение среднего геометрического трех целых чисел или произведения двух вещественных
Создать подпрограмму которая выполняет действие: Нахождение среднего...

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

Нахождение среднего арифметического трех целых чисел или суммы двух вещественных
#include &lt;iostream&gt; #include &lt;cmath&gt; int main() { float x,y; ...

Программа для вычисления среднего арифметического и геометрического массива чисел
Что-то написала, но программа неправильно считает Исправьте меня, пожалуйста...

Нахождение среднего геометрического произвольного набора вещественных чисел. Найти ошибку
Нахождение среднего геометрического произвольного набора веще- ственных чисел...

4
defer
秘密
558 / 238 / 16
Регистрация: 29.11.2010
Сообщений: 797
13.08.2012, 07:18 #2
так можно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
int main (void)
{
    double a , b , Sr;
    printf("a = ");
    scanf("%lf", &a );
    printf("b = ");
    scanf("%lf", &b );
    Sr = (a + b) / 2;
    printf("Srednee arifmeticheskoe 'a' i 'b' ravno %f \n", Sr );
    Sr = sqrt(a * b);
    printf("Srednee geometricheskoe 'a' i 'b' ravno %f \n", Sr );
    getch();
    return 0;
}
1
Dark-Fenir
0 / 0 / 0
Регистрация: 13.08.2012
Сообщений: 3
13.08.2012, 08:08  [ТС] #3
А чем %lf отличается от %f ?

Все разобрался.

Добавлено через 13 минут
Но есть еще вопрос по другой задаче
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
int main (void)
{
    int x, y;
    float z;
    printf("x = ");
    scanf("%i", &x );
    printf("y = ");
    scanf("%i", &y );
    z = (abs(x) - abs(y)) / (1 + abs(x * y)); 
    printf("(abs(x) - abs(y))/(1 + abs(x * y)) = %lf \n", z);
    getch();
    return 0 ;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
int main (void)
{
    int x, y;
    float z;
    printf("x = ");
    scanf("%i", &x );
    printf("y = ");
    scanf("%i", &y );
    z = (abs(x) - abs(y)) ;
    z = z / (1 + abs(x * y)); 
    printf("(abs(x) - abs(y))/(1 + abs(x * y)) = %lf \n", z);
    getch();
    return 0 ;
}
почему в первом варианте z=0 при любых значениях
а во втором варианте выводит правильное значение
0
defer
秘密
558 / 238 / 16
Регистрация: 29.11.2010
Сообщений: 797
13.08.2012, 08:12 #4
потому, что в этой строке
C++
1
(abs(x) - abs(y)) / (1 + abs(x * y))
все переменные int и результат поэтому int
исправить можно так
C++
1
z =(float) (abs(x) - abs(y)) / (1 + abs(x * y));
1
Dark-Fenir
0 / 0 / 0
Регистрация: 13.08.2012
Сообщений: 3
13.08.2012, 08:18  [ТС] #5
ясно
спасибо
0
13.08.2012, 08:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.08.2012, 08:18
Привет! Вот еще темы с решениями:

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

Нахождение среднего геометрического
Уважаемые форумчане, помогите новичку, написать программу: Нужно разработать...

Нахождение среднего геометрического определенного двумерного массива
Программа не хочет компилироваться. И не уверен, правильно-ли находится само...

Нахождение среднего арифметического
Всем добрый день, я только начал изучать c++, столкнулся с проблемой: нужно...


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

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

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