Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
VitekSR
0 / 1 / 0
Регистрация: 20.10.2013
Сообщений: 244
#1

Исправление программы - C++

20.10.2013, 19:59. Просмотров 224. Ответов 2
Метки нет (Все метки)

Помогите пожалуйста исправить программу

Дано вещественное x. Вычислить z =f( x )

Входной файл lb 2_*. in содержит в первой строке одно число – x , а выходной файл lb 2_*. out (вместо звездочки подставляется номер варианта) в первой строке число – y , представленное с точностью до четырех знаков после запятой, либо сообщение о том, что х не входит в область определения функции “ NO IMPOSIBLE ” .

Пример входного файла lb 2_12. in

4.039

Пример выходного файла lb 2_12. out

15.2525

Пример входного файла lb 2_12. in

3.3

Пример выходного файла lb 2_12. out

NO IMPOSIBLE


Сам код:
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
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <iostream>
 
int main()
{
    float q,e,w,x,g,z,a,b,c,d;
    printf("\n Vvedite x: ");
    scanf_s("%d",&x);
    if( sin(x)!=0&&(x)>0&&(log(4*(x)))/(sin(x))>0)
    {
        e=2.7;
        q=pow(e,x);
        w=pow(q,2);
        a=pow(q,w);
        g=a/x;
        b=log(4*(x));
        c=sin(x);
        d=pow(b/c,1/3);
        z=g+d;
        printf("z=%f",&z);
    }
 
    else
        printf("\n No impossible");
 getch();
 return 0;
}
Программа компилируется, ошибок нет. А вот начинаю вводить 4.039, показывает совершенно другое число (не то, которое представлено выше)
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2013, 19:59     Исправление программы
Посмотрите здесь:

C++ Исправление программы
C++ Исправление ошибок в C++
C++ исправление ошибок
C++ Исправление ошибки
исправление цикла C++
C++ Исправление ошибок
C++ Исправление ошибок
C++ Исправление
Исправление ошибок C++
C++ Исправление ошибки
C++ Исправление программы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FiLF
53 / 53 / 15
Регистрация: 05.09.2013
Сообщений: 1,328
22.10.2013, 05:38     Исправление программы #2
Используйте %f для ввода чисел типа float, а не %d.
VitekSR
0 / 1 / 0
Регистрация: 20.10.2013
Сообщений: 244
29.10.2013, 17:07  [ТС]     Исправление программы #3
Цитата Сообщение от FiLF Посмотреть сообщение
Используйте %f для ввода чисел типа float, а не %d.
Использовал, все равно одно и тоже

Добавлено через 1 минуту
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
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <iostream>
 
int main ()
{
    float q,e,w,x,g,z,b,c,d;
    printf("\n vvdeite x: ");
    scanf_s("%f",&x);
    if(sin(x)!=0&&(x)>0&&log(4*(x))/sin(x)>0)
    {
        e=2.7;
        q=pow(e,x);
        w=pow(q,2);
        g=w/x;
        b=log(4*(x));
        c=sin(x);
        d=pow(b/c,1/3);
        z=g+d;
        printf("z=%f",&z);
    }
    else
        printf("\n No impossible");
    getchar();
     return 0;
}
Исправил немного программу, но все равно не получается ничего. ПОМОГИТЕ!!
Yandex
Объявления
29.10.2013, 17:07     Исправление программы
Ответ Создать тему
Опции темы

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