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

Обмен опытом или как бы это сделали бы Вы!! - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Лишний символ при работе со строками http://www.cyberforum.ru/cpp-beginners/thread225070.html
(объясните, пожалуйста откуда он берется и как от него избавиться) код: #include <iostream> #include <stdio.h> #include <string.h> using namespace std; int main() {int a=1, b=0, c=0, n=0; int *A; int num=21, r=num; char *s; int i; while(c<num){
C++ Табулирование функции Всем привет!помогите пожалуста кто может: протабулировать функцию y=cos*3x-5,23/8,34-2*3,14+модуль sin2x на отрезке с шагом h=0.1*I,где I=4.Результаты вычеслений вывести на экран в виде таблицы пар чисел х,у.Вычислить произведение всех отрицательных значений функции y и определить количество положительных.Буду очень благодарен за помощь!заранее CПАСИБО!) http://www.cyberforum.ru/cpp-beginners/thread225020.html
C++ Переменная в заголовочном файле
//qwer.h class qwer { public: extern int a; }; //qwer.cpp #include "qwer.h"
Курсовая по информатике на С++ C++
Мы студенты-заочники, будущие инженеры-почтовики. От программирования люди достаточно далекие. Но... По информатике надо сделать курсовую с написанием программы на С++ с использованием NetBeans 6.8. Смогли скачать 6.9.1., но он без русификатора. Но, боюсь, что русификатор мало чем поможет. Если кто-нибудь может нам помочь - HELP!!! Условия в прикрепленном файле.
C++ строки в си++ http://www.cyberforum.ru/cpp-beginners/thread224961.html
Будьте добры, помогите с программой, если можно, то с подробным объяснением. Заранее благодарен.:) Даны две строки, содержащие не более 100 символов. Строки состоят из слов, разделенных пробелами. Распечатать каждую строку, заменив каждое слово, начинающееся с заданной буквы на заданное слово.
C++ неполадки в работе Доброго времени суток . Начну с самого начала . Моё железо состояло из : мать ABIT IS 7 , intel 4 3.00 память 2Gb видеокарта стояла старая с памятью 128 , я её понял, поставил Asus Ati4850 1GB и новый монитор на22 . Сначало все работало как в сказке , но через пару дней при работе с приложениями или игрушками материнская плата начала издавать писк с нарастающим темпом и после того как она... подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2908 / 1337 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
07.01.2011, 13:34     Обмен опытом или как бы это сделали бы Вы!!
Класс еще хранит некую очередь из лонг-даблов?

Вам надо серьезно поработать над стилем.
Имейте в виду, что крайне полезно разделять ввод данных и обработку данных. Например, не стоит делать класс, который использует ввод/вывод данных, если этот класс не предназначен именно для ввода/вывода данных.
Не стоит использовать метки по огромному количеству причин, например, потому, что это затрудняет чтение программы. Условных переходов всегда достаточно.

Если абстрагироваться от указанных технологий, я бы реализовал задачу совсем по-другому.
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
#include <cmath>
#include <cstddef>
#include <cstdio>
#include <string>
 
using std::string;
 
class Money {
 public:
  Money() : value_(0.0) {}
  explicit Money(long double value) : value_(value) {}
 
  // безусловно, не самая лучшая реализация, на скору руку
  string ToFormattedString(const string &thousands_separator,
                  const int &decimals) const {
    if (value_ < 0.000001)
      return string("0.00");
    string result = "";
 
    long int temporary_value = value_ * pow(10., decimals);
 
    for (int i = 0; i < decimals; ++i) {
      result = static_cast<char>((temporary_value % 10) + '0') + result;
      temporary_value /= 10;
    }
    result = '.' + result;
 
    size_t counter = 0;
    while (temporary_value > 0) {
      result = static_cast<char>((temporary_value % 10) + '0') + result;
      temporary_value /= 10;
      ++counter;
      if ((counter % 3 == 0) && (temporary_value > 0))
        result = thousands_separator + result;
    }
    return result;
  }
 
  long double GetValue() const { return value_; }
  void SetValue(long double const &new_value) { value_ = new_value; }
 private:
  long double value_;
};
 
int main(int argc, char *argv[]) {
  // пример
  Money a(1100.11);
  printf("%s", a.ToFormattedString(",", 2).c_str());
 
  int key;
  scanf("%d", &key);
}
 
Текущее время: 08:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru