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

Где ошибка? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Решение квадратного уравнения http://www.cyberforum.ru/cpp-beginners/thread663387.html
Здравствуйте. Тут такое дело, что дали написать программку с использованием классов решения квадратного уравнения, и вот вроде бы сделали, но какая то ошибка тут, не пойму. Подскажите. Заранее спасибо #include<iostream.h> #include<math.h> class CSquareUr { private: double a; double b; double d; ...
C++ Дана строка. Подсчитать общее колличество прописных и строчных латинских и русских букв и вывести на консоль количество Нужно ввести с консоли строку символов (длиной до 80 символов), и вывести на консоль количество маленьких букв в строке и количество больших букв в строке. Помогите пожалуйста http://www.cyberforum.ru/cpp-beginners/thread663346.html
C++ Надо перевести переменную типа unsigned char* в signed int и обратно
у меня есть переменная типа unsigned char*, мне нужно перевести ее в signed int , провести арифметические вычисления и затем перевести ее обратно в unsigned char*; делаю примерно так: unsigned char* r1= ....; //значение r1 signed int Ir1 = atoi(r1);// перевожу в тип int /* проводим вычисления */
C++ Ошибки в шаблоне
//DataFileCollection.h #pragma once #include <iostream> template<class Type> class DataFileCollection { public:
C++ Ошибка в формуле http://www.cyberforum.ru/cpp-beginners/thread663292.html
Write a C program that accepts three arguments names principal, intRate and months. Where principal is the amount financed, intRate is the interest rate; and months is the number of months the loan is for. Write a function called payment, that accepts the three parameters and returns the monthly payment according to the follow formula: payment = principal / ((1 / intRate ) – ( 1 / ( intRate *...
C++ Массив: Переписать элементы одномерного массива A, попадающие в интервал [2, 6], в массив B. Переписать элементы одномерного массива A, попадающие в интервал , в массив B. подробнее

Показать сообщение отдельно
Bodulay
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 8
04.10.2012, 14:24  [ТС]     Где ошибка?
Цитата Сообщение от Deviaphan Посмотреть сообщение
Ну так ты вывод всего не написал же! Потому и не работает.
Вывод тоже имеется в исходной программе. Я просто его вырезал, иначе программа слишком длинная, не для первого поста в топике.

Добавлено через 2 минуты
Цитата Сообщение от M128K145 Посмотреть сообщение
Bodulay, проблема в том, что при целочисленном делении как результат вы получаете целое число, т.е.
C++
1
2
3
int q = 5;
q *= 3; // q = 15
q >>= 2; // q = 7
А не 7.5, как вы ожидали. Используйте float или double и будет так, как вы ожидали.

PS. про циклы все-таки почитайте, а книги 20-30 летней давности, в которых пишутся такие вещи - лучше не читайте, т.к. паскаль - это не С/С++, современные компиляторы умеют оптимизировать код и мощность железа далека от той, которая была тогда. Да и после выхода паскаля архитектура ЦП менялась

ЗЫ. нормальный бы человек написал
C++
1
2
double q = 5;
q *= 1.5;
Я знаю и рассчитывал на то, что деление округляется, ибо аналогов обероновских или паскалевских div и mod я не знаю.
У нас в деревне только-только интернет подрубили, скорость низкая, 32 кбит/с. Какие там книги про С/С++.
Насчет "q *= 1.5;": пробовал, но у меня почему-то идет "Ошибка переполнения". Да и к тому же, так удобнее.
 
Текущее время: 00:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru