Ахах,это-то я знаю)) не настолько ватакат,надо окошко с полем ввода создать((( где пишет введите пароль ты вводишь в ето окошко)
на, на си переведешь спокойно. Code: ;This program was created on assembler editor .486 .model flat,stdcall option casemap:none WinMain proto :DWORD,:DWORD,:DWORD,:DWORD include include\windows.inc include include\user32.inc include include\kernel32.inc includelib lib\user32.lib includelib lib\kernel32.lib .data ClassName db "SimpleWinClass",0 MenuName db "FirstMenu",0 ButtonClassName db "button",0 EditClassName db "edit",0 pswrd db 'ватакат',0 ButtonText2 db ' ',0 r db 'Пароль введен верно',0 r2 db 'не верно',0 .data? buf db 256 dup (?) hInstance HINSTANCE ? CommandLine LPSTR ? hwndButton HWND ? hwndEdit HWND ? .const ButtonID equ 1 EditID equ 4 .code start: invoke GetModuleHandle, NULL mov hInstance,eax invoke GetCommandLine mov CommandLine,eax invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT invoke ExitProcess,eax WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM .IF uMsg==WM_DESTROY invoke PostQuitMessage,NULL .ELSEIF uMsg==WM_CREATE [COLOR=Red] invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR EditClassName,NULL,WS_CHILD or WS_VISIBLE or WS_BORDER or ES_LEFT or ES_AUTOHSCROLL,12,18,160,25,hWnd,EditID,hInstance,NULL[/COLOR] mov hwndEdit,eax invoke SetFocus, hwndEdit [COLOR=Red]invoke CreateWindowEx,NULL, ADDR ButtonClassName,ADDR ButtonText2,WS_CHILD or WS_VISIBLE or BS_DEFPUSHBUTTON,15,100,160,35,hWnd,ButtonID,hInstance,NULL[/COLOR] mov hwndButton,eax .ELSEIF uMsg==WM_COMMAND mov eax,wParam .IF lParam==0 .ELSE .IF ax==ButtonID shr eax,16 .IF ax==BN_CLICKED [COLOR=Red]invoke GetWindowText,hwndEdit,addr buf,512 mov esi,addr buf mov edi,offset pswrd invoke lstrcmpi,esi,edi .IF eax==0 invoke MessageBox,0,addr r,0,0 .ELSE invoke MessageBox,0,addr r2,0,0[/COLOR] .ENDIF .ENDIF .ENDIF .ENDIF .ELSE invoke DefWindowProc,hWnd,uMsg,wParam,lParam ret .ENDIF xor eax,eax ret WndProc endp WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD LOCAL wc:WNDCLASSEX LOCAL msg:MSG LOCAL hwnd:HWND mov wc.cbSize,SIZEOF WNDCLASSEX mov wc.style, CS_HREDRAW or CS_VREDRAW mov wc.lpfnWndProc, OFFSET WndProc mov wc.cbClsExtra,NULL mov wc.cbWndExtra,NULL push hInst pop wc.hInstance mov wc.hbrBackground,COLOR_BTNFACE+1 mov wc.lpszMenuName,OFFSET MenuName mov wc.lpszClassName,OFFSET ClassName invoke LoadIcon,NULL,IDI_APPLICATION mov wc.hIcon,eax mov wc.hIconSm,eax invoke LoadCursor,NULL,IDC_ARROW mov wc.hCursor,eax invoke RegisterClassEx, addr wc INVOKE CreateWindowEx,WS_EX_CLIENTEDGE,ADDR ClassName,NULL,\ WS_SYSMENU,CW_USEDEFAULT,\ CW_USEDEFAULT,200,200,NULL,NULL,\ hInst,NULL mov hwnd,eax INVOKE ShowWindow, hwnd,SW_SHOWNORMAL INVOKE UpdateWindow, hwnd .WHILE TRUE INVOKE GetMessage, ADDR msg,NULL,0,0 .BREAK .IF (!eax) INVOKE TranslateMessage, ADDR msg INVOKE DispatchMessage, ADDR msg .ENDW mov eax,msg.wParam ret WinMain endp end start
Задача: С клавиатуры вводим символьную строку. Если исходная строка не содержит цифр (то есть по таблице ANCII символов 48-57), то она считается не зашифрованной. Необходимо заменить все символы с кодами 33-99 на их двузначные коды. Вот накидал программу: не могу сообразить как сделать замену кода на двузначный. Может кто подсказать?
Напиши типа: Code: #include <iostream> #include <string> #include <bitset> using namespace std; int main() { string input; cout<<"Your string: "; getline(cin, input); for(string::iterator i = input.begin(); i != input.end(); i++) { if(*i >= '0' && *i <= '9') cout<<bitset<4>(*i); else cout<<*i; } cin.get(); return 0; }
Задача: С клавиатуры вводим символьную строку. Если исходная строка не содержит цифр (то есть по таблице ANCII символов 48-57), то она считается не зашифрованной. Необходимо заменить все символы с кодами 33-99 на их двузначные коды.
Code: #include <stdio.h> #include <conio.h> #define STR_SIZE 80 #define STR_SIZE_S "80" int main() { char input[STR_SIZE + 1]; int i, j, do_decrypt = 0; printf("Your string: "); if(scanf("%" STR_SIZE_S "[^\n]", input) != 1) { printf("Empty string\n"); return 1; } for(i = 0; i < STR_SIZE && input[i] != 0; i++) { if(input[i] >= '0' && input[i] <= '9') { do_decrypt = 1; break; } } for(i = 0; i < STR_SIZE && input[i] != 0; i++) { if(input[i] >= 33 && input[i] <= 99 && do_decrypt) { for(j = 128; j > 0; j /= 2) printf("%c", input[i] & j ? '1' : '0'); } else { printf("%c", input[i]); } } getch(); return 0; }
Kaimi не идет. Допустим ввожу слово Hello! оно должно же вывести, если следовать таблице ANCII, 72ello33. А выводит неизвестно что. Пробовал разобраться но не поулчается.
Тогда надо учиться задания составлять. Таблицы под названием "ANCII" не существует, это видимо твое личное изобретение. Ты в задании указывал, что надо заменять на двоичные коды, двоичный код - это, например, 10101. А ты приводишь в пример, где некоторые символы просто заменены на их ASCII коды. Причем, судя по твоей формулировке, заменять надо только если строка содержит цифры. Если заменять в любом случае символы, которые находятся в диапазоне 33-99, то непонятно нафига вообще нужна первая часть задачи.
Программа на с++ помогите, пожалуйста, с задачей: Дан массив целых чисел, содержащий n элементов. Получить массив, в котором записаны сначала все положительные числа, затем все отрицательные числа и нули, сохраняя порядок следования. ввод массива написала,дальше-в затупе.. #include "stdafx.h" #include <tchar.h> #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { register int *m1,n,x; cout<<"vvedite razmer massiva:"; //вводим размеры массива cin>>n; m1 = new int[n]; for(x=1;x<=n;x++) { cout<<"vvedite "<<x<<" element massiva:"; cin>>m1[x]; return 0; }
Вычислить, используя операторы условия не могу решить, т.к не знаю синтаксиса, на паскале такую сделал бы за 10 минут не более, Помогите кто может
Code: #include <conio.h> #include <iostream.h> int main() { int m[100],z[100],n,i,x; clrscr(); x=0; cout<<"Input length of massiv ="; cin>>n; for (i=1;i<=n;i++) { cout<<"Input mas["<<i<<"]="; cin>>m[i]; } cout<<"massiv:"<<endl; for (i=1;i<=n;i++) { cout<<m[i]<<endl; } for (i=1;i<=n;i++) { if (m[i]>0) { z[x]=m[i]; x=x+1; } } for (i=1;i<=n;i++) { if (m[i]<0) { z[x]=m[i]; x=x+1; } } for (i=1;i<=n;i++) { if (m[i]=0) { z[x]=m[i]; x=x+1; } } cout<<"New massiv:"<<endl; for (i=1;i<=n;i++) { cout<<z[i]<<endl; } getch(); } Не компилировал, писал в блокноте
Простой вопрос: С++ что проще реализовать чайнигу и по чему из тем больше инфы и алгоритмов. 1)программа сравнения двух cpp файлов 2)архиватор файлов и каталогов 3)парсер html-тегов а точнее подсветка их,как в редакторах 4)реализация на QT проги рисования функций на плоскости бесконечной и конечной
Врятли мало кода,используется ООП,это курсач. 2juzam: сделать программу,которая сравнит два cpp файла,пропарсит их,и выведет в текстоквый файл различие в них-например первый файл отличается несколькими переменными и несколькими классами,которых нет во втором cpp..