Спасибо, но ваш пример почемуто не работает. Записал так: PHP: HugeInt HugeInt::operator*=( HugeInt & op2) { int i,j,T = 0; HugeInt temp; temp.integer[ 0 ]= integer[ 0 ] + op2.integer[ 0 ] - 1; for (i=1;i<=integer[ 0 ] + op2.integer[ i ];) { temp.integer[ i++ ] = 0; for (i=1; i<=integer[ 0 ]; i++) { for (j=1;j<=op2.integer[ 0 ]; j++) temp.integer[i+j-1] += integer[i] * op2.integer[j]; for (i=1; i<=temp.integer[0]; i++) { T = ( temp.integer[i] += T ) / 10; temp.integer[i] %= 10; } } } if (T) temp.integer[++temp.integer[0]]= T; return temp; }
Проблема с stdin, нужно корректно ввести данных в структуру: PHP: struct Money { long int rub; unsigned char kop; }; Money Read() { Money Mstruct; cout << "rub: " << endl; cin >> Mstruct.grn; cout << "kop: " << endl; cin >> Mstruct.kop; return Mstruct; } void Display(Money Mstruct) { cout << (int)Mstruct.rub << "," << (int)Mstruct.kop << endl; } void main() { Money Mstruct1; Mstruct1 = Read(); Display(Mstruct1); } Вводится некорретно из-за unsigned char в структуре. Там должно быть записано число вводимое, а не код символа, другой тип данных в структуре использовать нельзя. P.S.: я понимаю, что в копейках поместится только одна цифра.
AnGeI Code: struct Money { long int rub; unsigned char kop; }; Money Read() { Money Mstruct; cout << "rub: " << endl; cin >> Mstruct.rub; cout << "kop: " << endl; int a; cin >> a; Mstruct.kop = a; return Mstruct; } void Display(Money Mstruct) { cout << (int)Mstruct.rub << "," << (int)Mstruct.kop << endl; } int main(void) { Money Mstruct1; Mstruct1 = Read(); Display(Mstruct1); return 0; }
Незащищенное от ошибок решение. Пользователь сможет ввести 25555, что приведет к непредвиденному преобразованию.
DeepBlue7, спасибо. Но все-таки интересно почему вводил в предыдущем коде 5 в копейках, выдавалось 51, откуда могла взяться единица?
Привет, народ, начал учить С++, решил в качестве литературы взять "C++ глазами хакера" книжка немного старая но много интересного(по крайней мере в огловлении) и все в примерах, но вот проблемка автор все примеры описывает в интерпритаторе visual c++ а у меня red studio 2010 и много всего не совподает если все делать по шагам, нашел на диске хакера visual 2008 express edition, решил зарегистрировать(потому как уменя не функционировал менеджер рисурсов, посоветовали зарегестрировать), завел ящик на winLive прошел опрос подтвердил все и в этоге пришло письмо от MS, там многого не понял но ключа так и не было только спасибо мол за регестрацию. Googleдал несколько ссылок мол как надо регится и ни чего конкретного. И еще в vs и builder'e все проекты одного типа по разному создаются, да? Кто читал книгу, подскажите как нибудь на builder'e ее пройти можно?
если ты совсем новичок, советою не переходить сразу же на Visual, а выучить основы подойдёт простой С потом от него очень легко перейдешь на С++ (ну оочень быстро ))) за день даже) ) а потом, зная основы тебе будет легче ) И кстати "C++ глазами хакера" рассчитан на тех кто уже знает немного С++ (если не ошибаюсь). --- короче скажи какой у тебя уровень знаний и мне (нам) будет легче тебя направить на верный путь ))
В общем я понял в чем моя проблем Express edition урезанная дальше не куда, у меня даже MFC нет, а все книги что есть у меня именно под VISUAL будь он не ладный да и нэт dial-up'овский так что ни чего не скачаешь(среду разработки я имею ввиду), по этому я подумал может кто подскажет книженку именно под С++ Builder, так хочу начать учить с++...
тогда основы C (синтакс , цыклы, простейшие функции и все такое ) потом на С++ (я за день перешёл ))) ) http://www.4p8.com/eric.brasseur/cppcen.html << потом HelloWorld na Visual http://www.algolist.net/Cpp/First_string_in_cpp дальше http://digg.com/newsbar/topnews/Visual_C_2008_Hello_World_Lesson_1 [много очень разных уроков ]<< и все ) это при условии если ты знаешь english немного.
В книгах, как правило, много воды. Мне, пока-что, только азы нужны. Было бы хорошо иметь какой-то wysiwyg редактор, генерирующий код, чтобы не заморачиваться с winapi. Посоветуйте годный
помогите в написании программы как написать программу на с++ используя параметры и функции, чтобы в двумерном массиве отсортировать столбцы матрицы по убыванию?
http://en.wikipedia.org/wiki/Bubble_sort << один из самых простых алгоритмов ) ------------------------------- ох ) новички ) щя напишу по быстрому ... ================================================ #include <cstdlib> #include <iostream> using namespace std; void main() { int m[6][6]; int i,j; int temp; /*sozdal matricu random*/ for(i=0;i<5;i++) for(j=0;j<5;j++) { m[j]=rand() % 100; } /*vivodim matricu na ecran*/ for(i=0;i<5;i++) { for(j=0;j<5;j++) {cout<<m[j]<<" ";} cout<<" "<<endl; } system("pause"); /*sortiruem matricu */ for(int z=0;z<5;z++) //dopolnitelnii tikl dlea sortirovki for(i=0;i<5;i++) for(j=0;j<5;j++) {if (m[j]<m[i+1][j]) //zamet chto tut i+1 ; dvigaemsea po vertikali {temp=m[i+1][j]; // m[i+1][j]=m[j]; // SWAP (meneaem mestami) m[j]=temp;} // } system("pause"); /*vivodim matricu na ecran uje otsortirovonuiu */ for(i=0;i<5;i++) { for(j=0;j<5;j++) {cout<<m[j]<<" ";} cout<<" "<<endl; } system("pause"); } ================================================ УДАЧИ !
Строки!С++ как прописать ввод с клавиатуры строки символов и удалить из этой строки все слова начинающиеся на гласную букву?