Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на языке Pascal


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

Гуревич Александр Львович
Статус: Специалист
Рейтинг: 1771
∙ повысить рейтинг »
_Ayl_
Статус: Студент
Рейтинг: 1419
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 1144
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Программирование / Pascal (Паскаль)

Номер выпуска:966
Дата выхода:10.11.2009, 09:30
Администратор рассылки:Калашников О.А., Руководитель
Подписчиков / экспертов:356 / 179
Вопросов / ответов:3 / 3

Вопрос № 173956: Уважаемые эксперты, помогите пожалуйста кое-в-чем. Исследуя в отладчике учебную (crackme) программу, была найдена процедура сборки пароля из имени. Она выглядела так: -----------------------------------------------------------------------------...


Вопрос № 173960: Помогите переделать код программы, чтоб он был с процедурами...заранее спасибо!) Задание: Заданы одномерные массивы А, В из 10 чисел. Построить массив С, каждый элемент которого вычисляется: Сі = 1/(ai - bi ), когда ai <> bi...
Вопрос № 173972: Добрый вечер многоуважаемые эксперты! прошу у вас прмрщи в решении одной задачки по Паскалю! Правая треугольная матрица А порядка n задана в виду последовательности (n+1)n/2 чисел : сначала идет n элементов первой строки, затем n-1 элемент втор...

Вопрос № 173956:

Уважаемые эксперты, помогите пожалуйста кое-в-чем. Исследуя в отладчике учебную (crackme) программу, была найдена процедура сборки пароля из имени. Она выглядела так:
-----------------------------------------------------------------------------------------------------------------
PUSH EBP
MOV EBP,ESP
PUSH ESI
PUSH EDI
LEA ESI,DWORD PTR DS:[403084] ; Смещение имени
LEA EDI,DWORD PTR DS:[403284] ; Смещение пароля
XOR EAX,EAX
XOR ECX,ECX
MOV BL,1A
Дальше идет собственно цикл создания пароля по имени:
/CMP BYTE PTR DS:[ESI],0 ; Проверка на конец строки
|JE SHORT CRACKME4.0040132A
|MOV AL,BYTE PTR DS:[ESI]
|ADD AL,CL
|XOR AL,CL
|DIV BL
|SHR AX,8
|ADD AL,41
|MOV BYTE PTR DS:[EDI],AL
|INC EDI
|INC ESI
|INC ECX
\JMP SHORT CRACKME4.00401310
Конец цикла
MOV BYTE PTR DS:[EDI],0
XOR EAX,EAX
CMP ECX,0
JE SHORT CRACKME4.0040134E
PUSH CRACKME4.00403284 ; /String2 = ""
PUSH CRACKME4.00403184 ; |String1 = ""
CALL <JMP.&KERNEL32.lstrcmpA> ; \lstrcmpA
CMP EAX,0
JE SHORT CRACKME4.0040134C
XOR EAX,EAX
JMP SHORT CRACKME4.0040134E
MOV EAX,ECX
POP EDI
POP ESI LEAVE
RETN 4
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Мой вопрос заключается в том, что я реализовал этот алгоритм на Turbo Pascal 7.0( см. приложение). Но он работает неправильно, т.к. , например, для ника Amaranth вместо правильного пароля NHTOTOUA, выдает PFZKVKUQ. Объясните в чем ошибка и исправьте код пожалуйста.

Отправлен: 04.11.2009, 09:53
Вопрос задал: Глухов Никита Святославович, Посетитель
Всего ответов: 1
Страница вопроса »


Отвечает Зенченко Константин Николаевич, Модератор :
Здравствуйте, Глухов Никита Святославович.

В паскале первый симвлол строки имеет индекс 1.
У Вас был 0, там записана длина самой строки.
Удачи!

Приложение:

-----
Итерация от человека. Рекурсия — от Бога. — Л. Питер Дойч

Ответ отправил: Зенченко Константин Николаевич, Модератор
Ответ отправлен: 04.11.2009, 10:31
Украина, Киев
Тел.: +38-097-953-66-19
Адрес: Украина, Киев

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 256169 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 173960:

    Помогите переделать код программы, чтоб он был с процедурами...заранее спасибо!)

    Задание:
    Заданы одномерные массивы А, В из 10 чисел. Построить массив С, каждый элемент которого вычисляется:
    Сі =
    1/(ai - bi ), когда ai <> bi
    1 , когда ai = bi.
    В массиве С поменять местами максимальный элемент и последний. Напечатать входной и выходной массивы

    Вод код моей программы на паскале:

    Код:
    program N4; 

    var i,n,imax:integer; {variables for a work}
    max:real; {maximal array cell}
    A: array[1..10] of integer;
    B: array[1..10] of integer;
    C: array[1..10] of real;
    prom:real; {variable for transposition of elements}

    procedure vvod; {hammering in arrays a and b and destroy these arrays on a screen}
    begin
    randomize;
    for i:=1 to 10 do begin a:=random(200)-100;
    write(a,' ');
    end;
    writeln;
    for i:=1 to 10 do begin b:=random(200)-100;
    write(b,' ');
    end;

    for i:=1 to 10 do {calculate array cells c}
    if a=b then c:=1
    else c:=1/(a-b);
    writeln;
    for i:=1 to 10 do {destroy an array c on a screen}
    write(c:0:2,' ');
    readln;
    end;

    begin vvod; {search of maximal element}
    max:=c[1]; imax:=1;
    for i:=2 to 10 do if c>max then begin
    max:=c; imax:=i;
    end;

    prom:=c[10]; {transposition of array cells}
    c[10]:=max;
    c[imax]:=prom;

    writeln('posle perestanovki elementov massiva');
    for i:=1 to 10 do {conclusion of array c on a screen}
    write(c:0:2, ' ');
    writeln;
    readln;
    end.


    Если есть какие-то некорректности - подправьте и помогите переделать код на код С ПРОЦЕДУРАМИ!!!

    Отправлен: 04.11.2009, 15:08
    Вопрос задал: modulka, Посетитель
    Всего ответов: 1
    Страница вопроса »


    Отвечает Зенченко Константин Николаевич, Модератор :
    Здравствуйте, modulka.

    Смотрите приложение. Добавил процедуры. Используется передача параметров в процедуру и обратно. Обмен реализован в теле программы, хотя и это можно записать как процедуру.
    Вопросы задавайте в мини-форум.
    Удачи!

    Приложение:

    -----
    Итерация от человека. Рекурсия — от Бога. — Л. Питер Дойч

    Ответ отправил: Зенченко Константин Николаевич, Модератор
    Ответ отправлен: 04.11.2009, 22:37
    Украина, Киев
    Тел.: +38-097-953-66-19
    Адрес: Украина, Киев

    Оценка ответа: 5
    Комментарий к оценке:
    Спасибо огромное за ответ!)
    Вы мне очень помогли!)
    Оценка - пять!)

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 256186 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 173972:

    Добрый вечер многоуважаемые эксперты!
    прошу у вас прмрщи в решении одной задачки по Паскалю!
    Правая треугольная матрица А порядка n задана в виду последовательности (n+1)n/2 чисел : сначала идет n элементов первой строки, затем n-1 элемент второй строки, начиная со второго элемента и т.д. ( из последней, n-ой строки берется только n-й элемент). Кроме этой последовательности дан вектор b c n элементами. Найти вектор Ab.

    Заранее огромное спасибо вам!!!

    Отправлен: 04.11.2009, 21:06
    Вопрос задал: Андреев Дмитрий Фёдорович, Посетитель
    Всего ответов: 1
    Страница вопроса »


    Отвечает Пупорев Юрий Борисович, Специалист :
    Здравствуйте, Андреев Дмитрий Фёдорович!
    Решение в приложении.

    Приложение:

    Ответ отправил: Пупорев Юрий Борисович, Специалист
    Ответ отправлен: 05.11.2009, 06:37

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 256190 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2009.6.10 от 26.10.2009

    В избранное