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

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

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

Не получается вставить десятичное число - C++

30.12.2013, 12:32. Просмотров 340. Ответов 14
Метки нет (Все метки)

Может тупая просьба но уже нет сил моих, не могу понять как и все. Ниже приведен код подскажите ошибку, или пример с похожими вычислениями.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <iostream.h>
void main()
float (fq)
{
float fq;
fq=0,5;
int pi;
cout << "Vvedite katet 1: ";
cin >> pi;
int r;
cout << "Vvedite katet 2: ";
cin >> r;
int S;
S = (fq*pi)*r;
// вывод результатов
cout << "S plos: ";
cout << S;
 
return ;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
demon_7
 Аватар для demon_7
257 / 189 / 43
Регистрация: 12.05.2013
Сообщений: 840
30.12.2013, 12:48     Не получается вставить десятичное число #2
в чем конкретно проблема ?
Кроме той что вы объявляете S,pi,r как int то есть целочисленные величины.
Потом вы перемножаете pi и r с величиной типа float, следовательно так как S (int) результат будет округленным.
ilisei
0 / 0 / 0
Регистрация: 30.12.2013
Сообщений: 7
30.12.2013, 12:54  [ТС]     Не получается вставить десятичное число #3
Проблема в том что у меня не получается подставить десятичное число в выражение.
demon_7
 Аватар для demon_7
257 / 189 / 43
Регистрация: 12.05.2013
Сообщений: 840
30.12.2013, 12:57     Не получается вставить десятичное число #4
какое число, в какое выражение...конкретнее
ilisei
0 / 0 / 0
Регистрация: 30.12.2013
Сообщений: 7
30.12.2013, 13:00  [ТС]     Не получается вставить десятичное число #5
Число fq должно быть равно 0,5. В выражение S.
demon_7
 Аватар для demon_7
257 / 189 / 43
Регистрация: 12.05.2013
Сообщений: 840
30.12.2013, 13:03     Не получается вставить десятичное число #6
я Вам уже написал что переменная fq типа float а S типа int. При вычислении выражения результат что храниться в S будет типа int, тоесть целочисленным, а это значит без дробной части, с арифметическим округлением.
Прочтите книгу С++ для чайников.
А по теме, объявите S как float, и я думаю Вы увидите то что хотите.
C++
1
2
float S;
S = (fq*pi)*r;
palva
 Аватар для palva
2439 / 1661 / 208
Регистрация: 08.06.2007
Сообщений: 6,575
Записей в блоге: 4
30.12.2013, 13:08     Не получается вставить десятичное число #7
Цитата Сообщение от ilisei Посмотреть сообщение
Число fq должно быть равно 0,5. В выражение S.
Мало ли что должно. Вы присвоили ему значение 5. Вы же написали
C++
1
fq=0,5;
ilisei
0 / 0 / 0
Регистрация: 30.12.2013
Сообщений: 7
30.12.2013, 13:10  [ТС]     Не получается вставить десятичное число #8
Не получается, выдает 0 в ответе.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <iostream.h>
void main()
{
float fq;
fq=0,5;
float pi;
cout << "Vvedite katet 1: ";
cin >> pi;
float r;
cout << "Vvedite katet 2: ";
cin >> r;
float S;
S = (fq*pi)*r;
cout << "S plos: ";
cout << S;
 
return ;
}
demon_7
 Аватар для demon_7
257 / 189 / 43
Регистрация: 12.05.2013
Сообщений: 840
30.12.2013, 13:13     Не получается вставить десятичное число #9
Цитата Сообщение от ilisei Посмотреть сообщение
Не получается, выдает 0 в ответе
потому что, как Вам уже сказал более наблюдательный palva, Вы неверно присвоили значение переменной fq.
palva
 Аватар для palva
2439 / 1661 / 208
Регистрация: 08.06.2007
Сообщений: 6,575
Записей в блоге: 4
30.12.2013, 13:13     Не получается вставить десятичное число #10
Цитата Сообщение от ilisei Посмотреть сообщение
Не получается, выдает 0 в ответе.
Значит, вы ввели нулевые катеты. Посмотрите отладчиком все переменные перед вычислением формулы.
demon_7
 Аватар для demon_7
257 / 189 / 43
Регистрация: 12.05.2013
Сообщений: 840
30.12.2013, 13:16     Не получается вставить десятичное число #11
Проверяйте сами себя в своем коде:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <iostream.h>
void main()
{
float fq;
fq=0,5;
float pi;
cout << "Vvedite katet 1: ";
cin >> pi;
float r;
cout << "Vvedite katet 2: ";
cin >> r;
float S;
S = (fq*pi)*r;
cout << fq; //значение переменной fq
cout << pi; //значение переменной pi
cout << r; //значение переменной r
cout << "S plos: ";
cout << S; //результат
 
return ;
}
ilisei
0 / 0 / 0
Регистрация: 30.12.2013
Сообщений: 7
30.12.2013, 13:22  [ТС]     Не получается вставить десятичное число #12
Пишет вот эту ошибку. this CXX0017: Error: symbol "this" not found
names1995
11 / 11 / 2
Регистрация: 13.11.2012
Сообщений: 276
30.12.2013, 13:24     Не получается вставить десятичное число #13
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdlib.h>
#include <iostream>
using namespace std;
int  main()
{
float fq;
fq=0.5;
float pi;
cout << "Vvedite katet 1: ";
cin >> pi;
float r;
cout << "Vvedite katet 2: ";
cin >> r;
float S;
S = (fq*pi)*r;
cout << "S plos: " <<S << endl;
 system ("PAUSE");
}
ilisei
0 / 0 / 0
Регистрация: 30.12.2013
Сообщений: 7
30.12.2013, 13:38  [ТС]     Не получается вставить десятичное число #14
Понял свою ошибку что тем что написал 0,5. Всем спасибо

Добавлено через 5 минут
Еще такой вопрос а что означает "Функцию оформить как отдельный файл" это просто EXE или чтобы функция прописала ответ в TXT сама ? Если возможно то привести пример
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.12.2013, 13:47     Не получается вставить десятичное число
Еще ссылки по теме:

C++ Двоичное число перевести в десятичное
Преобразовать десятичное число в число с заданным основанием C++
Определить является ли заданное десятичное число палиндромом C++
Перевести десятичное число в unicode C++
Требуется двоично-десятичное число перевести в десятичное C++

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

Или воспользуйтесь поиском по форуму:
palva
 Аватар для palva
2439 / 1661 / 208
Регистрация: 08.06.2007
Сообщений: 6,575
Записей в блоге: 4
30.12.2013, 13:47     Не получается вставить десятичное число #15
Это значит, что исходник функции должен находиться в отдельном файле cpp.

Добавлено через 2 минуты
А насчет примера здесь возможны варианты. В том числе зависящие и от среды программирования, которую вы используете.
Yandex
Объявления
30.12.2013, 13:47     Не получается вставить десятичное число
Ответ Создать тему
Опции темы

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