Fl0dER Форматируй вывод в буфер с помощью ws_printf: TCHAR szSomeBuffer[1024] = {0}; INT nSomeVar = 10; wsprintf(szSomeBuffer, "Значение переменной = %d\r\n.", nSomeVar); MessageBox(NULL, szSomeBuffer, "Example", MB_OK | MB_ICONEXCLAMATION);
http://narod.ru/disk/4952450000/Sortirovka)).rar.html не стоит слов благодарности))))))) P.S. хватает же бгггг, сделаешь им добро, а они тя есчо в чём то и обвиняют)) virustotal.com покажи где-там вирус... сори за оффтоп!
Выглядит примерно так: Code: # include <iostream> # include <cstdio> using namespace std; int main(){ cout << "Введите размерность массива\n"; int n=0; //переменная хранящая размерность массива cin >> n; int array[n]; for (int i=0;i<n;i++){ //начали заполнять массив cout << "Введите значение элемента №" <<i <<endl; cin >> array[i]; } //заполнение массива закончено int temp; //переменная для временного хранения значений for (int i=0; i<n; i++){ //здесь массивы сортируются for (int j=1; j<n-i; j++){ if (array[j-1]>array[j]) {temp=array[j-1]; array[j-1]=array[j]; array[j]=temp;}; } } //закончили сортровать массив //вывод отсортированного массива for (int i=0;i<n;i++){ cout << "Элемент массива №"; cout<< i << " = " << array[i]<<endl; } system ("pause"); return 0; }
в разделе сортировки будет правильнее так: for(int i =0; i<n; i++) for(int j=i; j<n; j++) if(array<array[j]) { int tmp = array; array = array[j]; array[j] = tmp; } что-то вроде этого. если сортировка не в ту сторону, поменяй < на >
Оно вроде бы и хорошо, но при моем варианте сортировка идет быстрее, так как выполняется меньше внутренних циклов. Это буде видно если ввести дополнительные переменные показывающие сколько и каких циклов было выполнено. Вот мой вариант Code: for (int i=0, Kolco=0; i<n; i++,Kolco++){ for (int j=1, Kolco2=0; j<n-i; j++,Kolco2++){ if (array[j-1]>array[j]) {temp=array[j-1]; array[j-1]=array[j]; array[j]=temp;}; cout<< "!!!!!!!!! Kolco2=" <<Kolco2<<endl; } cout <<"!!!!!! Kolco ="<< Kolco<<endl; } и твой (если отредактировать): Code: for(int i =0, Kolco=0; i<n; i++,Kolco++){ for(int j=i, Kolco2=0; j<n; j++,Kolco2++){ if(array[i]<array[j]) { int tmp = array[i]; array[i] = array[j]; array[j] = tmp; }; cout <<"!!!!!! Kolco2 ="<< Kolco2<<endl; } cout<< "!!!!!!!!! Kolco=" <<Kolco<<endl; } И что бы не было сомнений проверять рекомендую на одинаковых входных данных
привет. вообщем я новичок в С++, компилирую когда в Code:Bloks 8 а когда не получаетца что нибудь здесь, тогда перехожу на Visual 2008 Pro, да.... такое бывает. Вообщем учусь по книге, дошол до создания классов в отдельных файлах Headers files, с расширением .h, hpp, так вот создаю значит отдельно файл .cpp и отдельно класс в headers files, даю одинаковые имена и классу, и имени файла, сохраняю, в .cpp файле с помощью #include в вставляю <имя_файла.h>, делаю как в книге написано. И всеравно в обоих компилятарах при компиляции выдает сообщение что ненайден файл или папка с имя_файл.h и процесс тормозится. не пойму по какому пути нада сохранять созданный файл с расширением .h, что бы компилятор его видел. вродебы находица все в одной папке с .cpp файлом и нифига не пашет. Вкниге ответы не нашел.
Вот еще пару вопросов по C++ , как с помощью fopen открыть файл и занести его в переменую . И еще у меня имеется текст "C:\Windows\123.exe" как отсечь от этого текста "123.exe" ? =) И исчо Как произвести поиск текста по переменой =)
Я немного другое имел виду ,у меня к примеру в переменой C:/windows/123.exe но я знаю только то что последние 123.exe и мне надо получить что идет до этого только C/:windows/. Или как удалит из текстовой переменой последние 4 символа .
как-то так: PHP: string pathname("D:/windows/system32/file.exe"); cout<<pathname.substr(0, pathname.find_last_of("/")+1);
Ошибка при компиляции [BCC32 Error] File1.cpp(13): E2094 'operator<<' not implemented in type 'ostream' for arguments of type 'string' и вобще я не как не могу string конвертировать в char =(