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

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

Войти
Регистрация
Восстановить пароль
 
Shevva
17 / 17 / 0
Регистрация: 13.09.2009
Сообщений: 140
#1

действительные числа (С++) - C++

06.01.2010, 20:39. Просмотров 961. Ответов 4
Метки нет (Все метки)

Необходимо проверить, является ли данный рядок, правильно записанным действительным числом, возможно у научной форме записи, например, +1б376400Е-18. Найти это число.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2010, 20:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос действительные числа (С++) (C++):

Действительные числа - C++
Даны действительные числа a1,..,a15. Требуется домножить все члены последовательности a1,…,a15 на квадрат ее наименьшего члена, если а i...

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

Действительные числа - C++
Даны действительные числа a, b, c ( a=0). Выяснить, имеет ли уравнение ax2 + bx +c = 0 действительные корни. Если действительные корни...

Действительные числа - C++
Даны действительные числа X,Y. Если X,Y отрицательны, то каждое значение заменить его модулем; если отрицательное только одно из них то...

действительные числа - C++
даны действительные числа а и б. Получить 1/2 f(a) в 3 степени - f(b) в 5 степени, где f(x)=xe в степени (X в квадрате) делить 4

действительные числа a, b, c - C++
Привет всем! Помогите плз решить задание. Делать нужно через функцию. (Я создавал тут уже подобную тему недавно, но там было не через...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
06.01.2010, 21:45 #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
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <iostream>
#include <conio.h>
#include <string>
#include <math.h>
using namespace std;
bool get(string s,double &d)
{
       int sign=1;
       double data=0;
       bool isnum=true;
       int i=0; //ГЁГ*äåêñ
       if (s[i]=='-'){ sign=-1; i++;}
       if (s[i]=='+'){ sign=1; i++;}
       while (s[i]!='.' && i <=s.length())
       {
             if (s[i]>='0' && s[i]<='9')data=data*10 + (s[i]-'0');
             else if (s[i]!='.')return 0;
             i++;
       }
       if (s[i+1]=='\0')return 0;
       i++;
       int j=10;
       while (s[i]!='\0' && s[i]!='E' && s[i]!='e' && s[i]!='e' && i <=s.length())
       {
             if (s[i]>='0' && s[i]<='9')data+=(double)(s[i]-'0')/j;
             else  if (s[i]!='e' && s[i]!='E'&& s[i]!='\0')return 0;
             i++;
             j*=10;
       }
       int oder=0;
       int odersign=0;
       if (s[i]=='e'||s[i]=='E') i++;
       if (s[i]=='-'){ odersign=-1; i++;}
       if (s[i]=='+'){ odersign=1; i++;}
       while (s[i]!='\0' && i <=s.length())
       {
             if (s[i]>='0' && s[i]<='9')oder=oder*10 + (s[i]-'0');
             else if (s[i]!='\0')return 0;
             i++;
       }
       d=data*sign*exp(odersign*oder*log(10));
       return 1;
}
 
int main()
{
    string s;
    cin >> s;
    double d;
    if (get(s,d))cout << d << endl;
    else cout << "Wrong double lexic\n";
    getch();
}
1
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
07.01.2010, 19:36 #3
strtod() нельзя использовать ?
0
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
07.01.2010, 19:58 #4
а в чем же тогда работа будет заключаться? преподу понравится работа выполненная с помощью strtod() ?
0
Shevva
17 / 17 / 0
Регистрация: 13.09.2009
Сообщений: 140
12.01.2010, 12:46  [ТС] #5
А покажите, как можно это сделать, с функуией strtod()??
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.01.2010, 12:46
Привет! Вот еще темы с ответами:

Даны действительные числа A,B,C. Удвоить эти числа, если A>=B>=C, и заменить их абсолютными значениями, если это не так. - C++
Даны действительные числа A,B,C. Удвоить эти числа, если A&gt;=B&gt;=C, и заменить их абсолютными значениями, если это не так. Плюсану...

Даны натуральные числа k,n действительные числа a1,...,akn. Получить: max(a1+...+ak,ak+1+...+a2k,ak(n-1)+1+...+akn); - C++
Всем здрастье! Может кто пояснить как это делается: Даны натуральные числа k,n действительные числа a1,...,akn. Получить:...

Даны действительные числа x, y - C++
Помогите пожалуйста. Даны действительные числа x, y. Если x и y отрицательные, то х присвоить значение удвоенного модуля х. Если...

Даны действительные числа X и Y... - C++
Даны действительные числа X и Y, не равные друг другу. Меньшее из этих двух чисел заменить половиной их суммы, а большее- их удвоенным...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.01.2010, 12:46
Ответ Создать тему
Опции темы

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