Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 7
1

Все время выводит 0, в чём ошибка

05.12.2014, 06:48. Показов 1731. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <math.h>
#include <windows.h>
#include <locale.h>
 
float mean(float X, float Y)
{   
    float Ar, G;
    if (X>0 && Y>0)
    {
        Ar=((X+Y)*2);
        G=sqrt(X*Y);
        printf("Amean=%f\n", &Ar);
        printf("Gmean=%f\n", &G);
        return 1;
    }
    else return 0;
}
 
void main()
{
    float A, B, C, D;
    setlocale (LC_ALL, "russian");
 
    printf("Ввод A:\n");
    scanf("%f", &A);
    printf("Ввод B:\n");
    scanf("%f", &B);
    printf("Ввод C:\n");
    scanf("%f", &C);
    printf("Ввод D:\n");
    scanf("%f", &D);
    
    mean(A,B);
    mean(A,C);
    mean(A,D);
 
    system ("pause");
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2014, 06:48
Ответы с готовыми решениями:

Выводит все время в ответе 0,0. надо найти наименьший и наибольший элемент матрицы, в чем ошибка?
procedure TForm1.btn1Click(Sender: TObject); begin strngrd1.Cells:='стр.\столб.';...

Random все время выводит ноль
Нужно что бы выводило единицы, если есть отрицательное число, а с рандомом все время выводит 0....

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

Выводит матрицы с нулями, в чем ошибка?
#include&lt;iostream&gt; #include&lt;math.h&gt; #include&lt;iomanip&gt; using namespace std; void main() {...

8
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
05.12.2014, 07:25 2
Рабочая программа

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
#include <math.h>
#include <windows.h>
#include <locale.h>
 
void mean(float x, float y)
{
float ar, g;
 
if ((x > 0) &&(y > 0))
{
ar =(float)((x + y) * 2);
g = (float)sqrt( x * y);
printf("Amean= %f\n", ar);
printf("Gmean= %f\n", g);
return 1;
}
else return 0;
}
 
int main()
{
float a, b, c, d;
setlocale (LC_ALL, "russian");
 
printf("Ввод A:\n");
scanf("%f", &a);
printf("Ввод B:\n");
scanf("%f", &b);
printf("Ввод C:\n");
scanf("%f", &c);
printf("Ввод D:\n");
scanf("%f", &d);
 
mean(a,b);
mean(a,c);
mean(a,d);
 
system ("pause");
}
1. Во первых в Си первая буква переменные должна быть в нижнем регистре
2. if (X>0 && Y>0) где && имеет больший приоритет чем >. Поэтому не правильно будет считывать
3. Зачем функции заголовок float? Если она ничего не возвращает.
4.
C
1
2
printf("Amean=%f\n", &Ar);
printf("Gmean=%f\n", &G);
Ваш &. Он здесь не нужен!
0
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
05.12.2014, 10:40 3
Цитата Сообщение от Kommersantt Посмотреть сообщение
1. Во первых в Си первая буква переменные должна быть в нижнем регистре
С какого такого перепугу?!
Цитата Сообщение от Kommersantt Посмотреть сообщение
2. if (X>0 && Y>0) где && имеет больший приоритет чем >.
Впервые слышу
Цитата Сообщение от Kommersantt Посмотреть сообщение
3. Зачем функции заголовок float? Если она ничего не возвращает.
Она-то как раз возвращает. Но ее возврат не используется. Что ошибкой не является и ни что не влияет. А вот у вас как раз ошибочка. void-функция что-то пытается возвратить
Цитата Сообщение от Kommersantt Посмотреть сообщение
4.
А это, как ни странно, правильно. Единственная ошибка ТС. Он в printf использует адреса по аналогии со scanf.

Добавлено через 9 минут
RolandOfGilead, Дружеский совет. Чем быстрее вы забудете о существовании типа float, тем меньше у вас в будущем будет болеть голова. Используйте всегда double.
1
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
05.12.2014, 10:49 4
Цитата Сообщение от Байт Посмотреть сообщение
Сообщение от Kommersantt
1. Во первых в Си первая буква переменные должна быть в нижнем регистре
С какого такого перепугу?!
Я читаю третью книгу по Сишке и там во всех так твердят.

Цитата Сообщение от Байт Посмотреть сообщение
Сообщение от Kommersantt
2. if (X>0 && Y>0) где && имеет больший приоритет чем >.
Впервые слышу
Тут я может перепутал, но по мне для более читаемости скобки были не лишние.

Цитата Сообщение от Kommersantt Посмотреть сообщение
3. Зачем функции заголовок float? Если она ничего не возвращает.
Она-то как раз возвращает. Но ее возврат не используется. Что ошибкой не является и ни что не влияет. А вот у вас как раз ошибочка. void-функция что-то пытается возвратить

Зачем нам использовать тут float? Если в этой задачи, функция ничего не должна возвращать??? поэтому поменял на void
0
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
05.12.2014, 11:03 5
Лучший ответ Сообщение было отмечено RolandOfGilead как решение

Решение

Цитата Сообщение от Kommersantt Посмотреть сообщение
Я читаю третью книгу по Сишке и там во всех так твердят.
Очень интересно! Ссылочку или цитатку не можете привести? Нигде и никогда такого не встречал. А прочел я книжечек поболее, чем 3. С латинской буквы - да! Но ее размер нигде не оговаривается.
Цитата Сообщение от Kommersantt Посмотреть сообщение
ут я может перепутал, но по мне для более читаемости скобки были не лишние.
Перепутал. Но скобки - не лишние. Если есть сомнения (а все приоритеты не всегда помнишь) - ставь скобки!
Цитата Сообщение от Kommersantt Посмотреть сообщение
Зачем нам использовать тут float? Если в этой задачи функция ничего не должна возвращает??? поэтому поменял на void
Путаетесь. Функция у ТС возвращает значение (return 1, return 0). Другое дело, что это возвращаемое значение нигде не используется, но это не ошибка. Откуда нам знать, может быть ТС задумал в дальнейшем это значение как-то использовать? Хотя даже в этом случае по логике функции она должна возвращать int или bool. Но это по большому счету - не наше дело.
А вот то что сделали вы - объявили функцию как void и забыли убрать return - это уже ошибка. В лучшем случае транслятор выдаст warring. Но по уму, это конечно error.
0
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 7
05.12.2014, 11:36  [ТС] 6
Спасибо больше, за ваше объяснение.
0
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 7
10.12.2014, 06:48  [ТС] 7
Другое дело, что это возвращаемое значение нигде не используется
Байт, а как использовать возвращаемое значение, подскажите пожалуйста если не трудно.
0
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
10.12.2014, 09:59 8
Цитата Сообщение от RolandOfGilead Посмотреть сообщение
как использовать возвращаемое значение,
А зачем?
0
0 / 0 / 0
Регистрация: 09.10.2014
Сообщений: 7
10.12.2014, 11:52  [ТС] 9
Нужно Разработать функцию mean(X, Y, AMean, GMean), вычисляющую среднее арифметическое и среднее геометрическое двух положительных чисел XиY(X, Y– входные, а AMean, GMean – выходные параметры).
В качестве возвращаемого значения функция должна выдавать истину, если числа X и Y положительны и ложь– в противном случае. С помощью этой функции найти среднее арифметическое и среднее геометрическое для пар чисел
(A, B), (A, C), (A, D), если A, B, C, D заданы пользователем.
И я не понимаю как использовать возвращаемое значение в main.
0
10.12.2014, 11:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.12.2014, 11:52
Помогаю со студенческими работами здесь

В чем ошибка (QLineEdit не выводит строку)?
По идее должна появиться форма: кнопка и текстовое поле. По нажатию на кнопку должен выводится...

Не выводит картинку из баз данных, в чем ошибка?
использую аналог этого кода https://codewithawa.com/posts/image-upload-using-php-and-mysql-database...

В чем ошибка? Выводит просто черное окно
В чем ошибка? Выводит просто черное окно #include &lt;SFML\Graphics.hpp&gt; #include...

Не выводит текст по нажатию кнопки, в чем ошибка
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru