Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.10.2010, 21:19   #11
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Действительно, этого я не заметил (20 цифр), сейчас поправлю.
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 17.10.2010, 18:44   #12
vilison
Пользователь
 
Аватар для vilison
 
Регистрация: 30.01.2010
Сообщений: 29
По умолчанию

Так, что добавить надо (в программу)? Вы скажите, что бы я как то понимал что происходит, и что к чему ведет...
Я просто не увидел изменения в вашей программе.
endl - не могу найти точного определения этой функции, не могли бы Вы, Мне её подсказать?
Спортсмен, который себя любит, должен насиловать себя тренировками!

Последний раз редактировалось vilison; 17.10.2010 в 19:07.
vilison вне форума Ответить с цитированием
Старый 17.10.2010, 19:29   #13
Dj-IIyIIc
Пользователь
 
Регистрация: 24.09.2010
Сообщений: 13
По умолчанию

насколько я знаю,endl просто переходит в консоли на новую строку(как enter при печати в блокноте)
Dj-IIyIIc вне форума Ответить с цитированием
Старый 17.10.2010, 19:34   #14
vilison
Пользователь
 
Аватар для vilison
 
Регистрация: 30.01.2010
Сообщений: 29
По умолчанию

а, ну, это лучше чем cout<<"/n" постоянно писать)
Благодарю за пояснения.
Да у меня тоже не удаляет, вон точки ставить приходится...

double x(a); -это равносильно double x=a;?!
Спортсмен, который себя любит, должен насиловать себя тренировками!

Последний раз редактировалось Stilet; 19.10.2010 в 13:02.
vilison вне форума Ответить с цитированием
Старый 17.10.2010, 20:54   #15
Dj-IIyIIc
Пользователь
 
Регистрация: 24.09.2010
Сообщений: 13
По умолчанию

да,посути это все есть new double(double&d);
Dj-IIyIIc вне форума Ответить с цитированием
Старый 17.10.2010, 21:37   #16
vilison
Пользователь
 
Аватар для vilison
 
Регистрация: 30.01.2010
Сообщений: 29
По умолчанию

Не очень понял, только суть уловил.

А как мне это теперь в оконную программу замутить?
Есть такая возможность?
Спортсмен, который себя любит, должен насиловать себя тренировками!

Последний раз редактировалось Stilet; 19.10.2010 в 13:03.
vilison вне форума Ответить с цитированием
Старый 18.10.2010, 16:39   #17
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Цитата:
Сообщение от vilison Посмотреть сообщение
а, ну, это лучше чем cout<<"/n" постоянно писать)
endl ещё и буфер очищает после этого, так что это когда как.
Somebody вне форума Ответить с цитированием
Старый 18.10.2010, 20:07   #18
vilison
Пользователь
 
Аватар для vilison
 
Регистрация: 30.01.2010
Сообщений: 29
По умолчанию

Ясно, слушай, а может ты подскажешь? что тут надо сделать, что бы программа выдавала ответ с точностью до 20го числа после запятой.
Код:
#include "stdafx.h" // Подключаем библиотеку "stdafx.h".
#include <iostream> // Название от Input/Output Stram ("поток ввода-вывода").
#include <math.h> // Подключаем библиотеку <math.h>/
using std::cout;  // Ввод перед cout std, где cout - это вывод на экран.
using std::endl; // Ввод перед endl std, где endl - это перевод на следующую строку.
using std::cin; // Ввод перед cin  std, где cin  - это ввод с клавиатуры.
//using namespace std; - ввод перед каждой строчкой std.
int _tmain(int argc, _TCHAR* argv[])
{
	double a(0.0); // Обьявляем новую переменную а с плавающей точкой, которая равна 0,0.
	cout << "Input the number: "; // Просим ввести "а".
	cin >> a; // Вводим "а"
	
	if(!a) // Если (a==0)
	{
		cout << "Result: 0" << endl; // Ввывод на экран "результат: 0".
		return 0; // Возвращение, повторить 0 раз.
	}
	
	double x(a);  // Обьявляем новую переменную x с плавающей точкой, x равен переменной а.
	for(int i=0; i<1000; i++) // Создаем цикл, обьявляем (i=0; i<1000; i++).
		x = 0.5*(x+a/x); // Формула Герона: a = 0.5*(a+a/x).

	cout << "Result: " << x << endl; // Ввывод на экран "результат: x", где x - это корень числа.
	system("pause"); // system - Обеспечивает передачу команды, командному процессору DOS.

	return 0; // Возвращение, повторить 0 раз.
}
Спортсмен, который себя любит, должен насиловать себя тренировками!

Последний раз редактировалось Stilet; 19.10.2010 в 13:04.
vilison вне форума Ответить с цитированием
Старый 18.10.2010, 20:33   #19
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

У меня есть сильные опасения, что для точности в 20 знаков после запятой может понадобиться длинная арифметика...
Т.к. даже 8-байтные типы позволят вам хранить числа порядка 10^19 (2^64 ~ 1.8 * 10^19).
А если вы хотите делать все в оконном приложении, то для MS VS основной вариант, пожалуй - MFC (C++ CLI - это извращение, Qt еще прикручивать, остальные вообще не знаю). Проще всего с GUI в C++ Builder'е, но и вариант во многом довольно топорный.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 18.10.2010, 21:22   #20
vilison
Пользователь
 
Аватар для vilison
 
Регистрация: 30.01.2010
Сообщений: 29
По умолчанию

Гром, Вы меня немного напугали, у меня не большой опыт в с++, по этому и так интересуюсь каждой строчкой...
Вы можете рассказать что примерно делать надо?
Я просто как то сильно усомнился в своих способностях...

Мне один хороший человек подсказал логику:
- Сохраняем в массиве char введенное число посимвольно (123 - "123").
- Вычисляем и сохраняем корень из целой части числа в int (можно перебором).
- Заводим char[20], заполняем "0".
- От начала до конца char[20] бежим и перебираем, пока квадрат слияния массива с целой частью (п.2) меньше введенного числа и все придется реализовать на массиве char: сравнение чисел, возведение в квадрат.
- Выводим результат на экран.
Но я не очень понимаю как её в С++ перевести, есть много вопросов. Если есть интерес помочь скажите, я задам конкретные вопросы...
Спортсмен, который себя любит, должен насиловать себя тренировками!

Последний раз редактировалось Stilet; 19.10.2010 в 13:04.
vilison вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен совет hestika Софт 1 20.08.2015 16:30
Нужен совет! Энжи Помощь студентам 1 24.04.2010 20:05
Нужен совет Михаил Юрьевич Общие вопросы Delphi 3 04.05.2008 21:52