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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.75
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
#1

"Научный" формат - C++

04.02.2011, 14:12. Просмотров 2418. Ответов 19
Метки нет (Все метки)

1. Написать программу решения квадратного уравнения. Ввод и вывод – через потоки ввода-вывода. Вывод результата в "научном" формате. Установить ширину поля 12 символов, установить точность 4 цифры, заменить пробелы символом «~» с помощью функций и манипуляторов. Предусмотреть обработку ошибок.

Что значит "научный" формат??

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
#include<iostream.h>
#include<math.h>
#include<conio.h>
float a,b,c,x1,x2,decr;
//decr  дескрименант
 
void main()
{
  clrscr();
  cout<<"\n Введите коэффициенты a,b,c уравнения: \n a*x^2+bx+c\n";
  cin>>a>>b>>c;   //Вввод с клавиатуры
  decr=b*b-4*a*c;
  if (decr<0)
    cout << "Решение уравнения";
  else
  {
   x1=(-b+sqrt(decr))/(2*a);
   x2=(-b-sqrt(decr))/(2*a);
   cout<<"\n x1=" ;
   cout.width(12);   //ширина поля 10 символов
   cout.precision(4);//точность 4 цифры
   cout.fill('~');   //заполнить вместо пробелов символом $
   cout<<x1<<"\n x2=";
   cout.width(12);   //ширина поля 10 символов
   cout.precision(4);//точность 4 цифры
   cout<<x2;
  }getch();     //ждёт нажатия на любую клавишу
  }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.02.2011, 14:12     "Научный" формат
Посмотрите здесь:

Игра "Крестики-нолики" формат 5х5 - C++
Есть данный код игры (позаимствован у юзера Fixer 84), но с массивом 3х3. Нужно сделать 5х5, суть я примерно понял, но не могу это...

Найти угол одной точки "A" в соотношении к точке "B" в градусах - C++
Этот метод возвращает значение в радианах, как получить градусы? #define DEG 57.2957795f atan2f(p1.y - p2.y, p1.x - p2.x) * DEG;

Сколько существует способов расставить между цифр знаки "+" и "-" - C++
Вот сама задача - {удалено} Не могу сделать норм перебор

Вычисление суммы позиций на которых в слове Х стоят буквы "в" и "п" - C++
Вот тут дали задание и не знаю как решить....я думаю есть добрые люди???=))) Напишите программу вычисления суммы позиций на которых в...

Определить "Y" с точностью до члена ряда меньшего "e"(допустим: 0.001) - C++
Требуется определить &quot;Y&quot; с точностью до члена ряда меньшего &quot;e&quot;(допустим: 0.001) Y=x/3-x^3/15+x^5/75-x^7/375...+-x^(2n+1) / 3*5^n ; ...

Подсчитать, колько раз в произвольном тексте встречается символ "*" и "+" - C++
Дан любой текст...Сколько раз в нём встречается символ &quot;*&quot; и &quot;+&quot;? нужно использовать цикл с счетчиком

Error C2361: пропуск инициализации "Height" из-за метки "default" - C++
Добрый день! Решила чуть изменить типичный код из учебника - и тут же появилась ошибка компилятора. Код вот такой: #include...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
04.02.2011, 14:29     "Научный" формат #2
Экспоненциальный. Учёным часто нужны гигантские цифры, записывать которые в обычной нотации слишком длинно и даже специальные системы единиц спасают далеко не всегда. Отсюда на столько частое применение нотации с плавающей запятой, что её даже зовут научной.

Добавлено через 2 минуты
Думал об одном, набрал другое. Исправил.
vx5
187 / 171 / 4
Регистрация: 04.09.2010
Сообщений: 656
04.02.2011, 15:03     "Научный" формат #3
C++
1
cout << scientific;
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 15:39  [ТС]     "Научный" формат #4
Цитата Сообщение от vx5 Посмотреть сообщение
C++
1
cout << scientific;
Выдает ошибку

Undefined symbol 'scientific'

Подскажите, пожалуйста, как его можно объявить в программе?
Escapable
54 / 54 / 1
Регистрация: 09.11.2010
Сообщений: 120
04.02.2011, 15:47     "Научный" формат #5
C++
1
cout << scientific << x1;
После scientific ставим нужную, для отображения, переменную.
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 16:13  [ТС]     "Научный" формат #6
Цитата Сообщение от Escapable Посмотреть сообщение
C++
1
cout << scientific << x1;
После scientific ставим нужную, для отображения, переменную.
Это я понял, и когда так сделал и появилась эта ошибка.

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
#include<iostream.h>
#include<math.h>
#include<conio.h>
float a,b,c,d;
float x1,x2;
//decr  дескрименант
 
 
void main()
{
  clrscr();
  cout<<"\n Vvedite koefficienti a,b,c yravneniya: \n a*x^2+bx+c\n";
  cin>>a>>b>>c;   //Вввод с клавиатуры
  d=b*b-4*a*c;
  if (d<0)
    cout << "Reshenie yravneniya v oblasti komplexnix chisel";
  else
  {
   x1=(-b+sqrt(d))/(2*a);
   x2=(-b-sqrt(d))/(2*a);
   cout<<"\n x1=" ;
   cout.width(12);   //ширина поля 10 символов
   cout.precision(4);//точность 4 цифры
   cout.fill('~');   //заполнить вместо пробелов символом $
   cout<<scientific<<x1<<"\n x2=";
   cout.width(12);   //ширина поля 10 символов
   cout.precision(4);//точность 4 цифры
   cout<<scientific<<x2;
  }getch ();     //ждёт нажатия на любую клавишу
  }
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
04.02.2011, 16:24     "Научный" формат #7
printf( "%e\n", 123456.23432234 );
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 16:35  [ТС]     "Научный" формат #8
Цитата Сообщение от alex_x_x Посмотреть сообщение
printf( "%e\n", 123456.23432234 );
Это не подходит, нужно обязательно использывовать cin и cout
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
04.02.2011, 16:52     "Научный" формат #9
Ну в память в строку переведи, а потом в cout.
vx5
187 / 171 / 4
Регистрация: 04.09.2010
Сообщений: 656
04.02.2011, 17:05     "Научный" формат #10
C++
1
std::cout.setf(std::ios_base::scientific, std::ios_base::floatfield);
Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,446
04.02.2011, 17:09     "Научный" формат #11
ЕМНИП, scientific - это потоковый манипулятор, который объявлен в пространстве имен std (в современных реализациях языка, естественно). Попробуй подключить iomanip, вдруг получится
vx5
187 / 171 / 4
Регистрация: 04.09.2010
Сообщений: 656
04.02.2011, 17:12     "Научный" формат #12
Цитата Сообщение от Escapable
После scientific ставим нужную, для отображения, переменную.
необязательно, это инерционный бит.
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 18:21  [ТС]     "Научный" формат #13
Ни че не получается, кто-нибудь может просто взять мой код и переделать его так что бы x1 и x2 выводились в научном формате??
Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,446
04.02.2011, 18:29     "Научный" формат #14
CFYZ, я могу, только ты своим компилятором не сможешь его откомпилировать
vx5
187 / 171 / 4
Регистрация: 04.09.2010
Сообщений: 656
04.02.2011, 18:38     "Научный" формат #15
Цитата Сообщение от CFYZ Посмотреть сообщение
Ни че не получается, кто-нибудь может просто взять мой код и переделать его так что бы x1 и x2 выводились в научном формате??
что теперь говорит ? и что у вас вообще за компилятор ?

Добавлено через 4 минуты

Не по теме:

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

CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 18:47  [ТС]     "Научный" формат #16
говорит все тоже, а когда вставил эту строку:
C++
1
std::cout.setf(std::ios_base::scientific, std::ios_base::floatfield);
начало говорить что это можно использовать в структурах.
А копмилятор borland c 3.1

Добавлено через 1 минуту
Цитата Сообщение от Nameless One Посмотреть сообщение
CFYZ, я могу, только ты своим компилятором не сможешь его откомпилировать
А какой у тебя компилятор?
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
04.02.2011, 18:47     "Научный" формат #17
CFYZ, я чето не уверен, что в борланде вообще манипуляторы поддерживаются
таки sprintf + cout
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 18:49  [ТС]     "Научный" формат #18
Всем спасибо, заработало)
vx5
187 / 171 / 4
Регистрация: 04.09.2010
Сообщений: 656
04.02.2011, 18:50     "Научный" формат #19
Цитата Сообщение от CFYZ Посмотреть сообщение
А копмилятор borland c 3.1
старье, однако..
может так прокатит
C++
1
cout.flags(ios::scientific);
Добавлено через 47 секунд
Всем спасибо, заработало)
в чем была проблема ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.02.2011, 18:52     "Научный" формат
Еще ссылки по теме:

Результаты сдачи экзамена группой из N сту-дентов находятся в массиве REZ. Подсчитать количество студентов, сдавших экзамен на "хорошо" и "отлично" - C++
Задача 68. Результаты сдачи экзамена группой из N сту-дентов находятся в массиве REZ. Подсчитать количество студентов, сдавших экзамен на...

Каждую последовательность символов"АBC" заменить на"ALPHABET" - C++
ввести строку.Создать другую строку из символов введенной, где каждую последовательность символов&quot;АBC&quot; заменить на&quot;ALPHABET&quot; пример...

Невозможно преобразовать "unsigned int" в "output::book_origin" - C++
Помогите как исправить данную проблему Серьезность Код Описание Проект Файл Строка Ошибка C2440 =: невозможно преобразовать &quot;unsigned...

Преобразовать строку, заменяя каждое слово "this" словом "that". - C++
подскажите в чем ошибка задание:Преобразовать строку, заменяя каждое слово &quot;this&quot; словом &quot;that&quot;. #include &lt;iostream&gt; #include...

Ввести строку. Вывести её, заменив цифры на слова ( 0 - "one", 1 - "two", ...) - C++
Ввести строку. Вывести её, заменив цифры на слова: ( 0 - &quot;one&quot;, 1 - &quot;two&quot;, ...)???


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

Или воспользуйтесь поиском по форуму:
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
04.02.2011, 18:52  [ТС]     "Научный" формат #20
запустил в buildere, надеюсь в универе прокатит, потому что там требовали что бы мы писали в borland c)

но все равно всем спасибо)
Yandex
Объявления
04.02.2011, 18:52     "Научный" формат
Ответ Создать тему
Опции темы

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