Все разобрался вроде Я не правильно объявлял функции=) Вот так это должно выглядеть Code: procedure TForm1.Button1Click(Sender: TObject); type TBASS_Init = function(device: LongInt; freq, flags: DWORD; win: HWND; clsid: PGUID): Boolean; stdcall; TBASS_StreamCreateFile = function(mem: BOOL; f: Pointer; offset, length: Int64; flags: DWORD): DWORD; stdcall; TBASS_ChannelPlay = function(handle: DWORD; restart: BOOL): BOOL; stdcall; var BASS_Init : TBASS_Init; BASS_StreamCreateFile : TBASS_StreamCreateFile; BASS_ChannelPlay: TBASS_ChannelPlay; DLLInstance : THandle; stream:TStream; mem: Pointer; Channel1:HWND; begin stream:=TResourceStream.Create(hinstance,PChar('doorup'),PChar('sounds')); GetMem(mem, stream.size); stream.Read(mem^, stream.Size); DLLInstance := LoadLibrary(PChar('bass.dll')); if (DLLInstance = 0) then begin MessageDlg('Невозможно загрузить DLL', mtError, [mbOK], 0); Exit; end; try @BASS_Init := GetProcAddress(DLLInstance, 'BASS_Init'); @BASS_StreamCreateFile := GetProcAddress(DLLInstance, 'BASS_StreamCreateFile'); @BASS_ChannelPlay := GetProcAddress(DLLInstance, 'BASS_ChannelPlay'); if Assigned(@BASS_StreamCreateFile) and (Assigned(@BASS_ChannelPlay)) and (Assigned(@BASS_Init)) then begin if BASS_Init(-1, 44100, 0, Application.Handle, nil) then begin Channel1:=BASS_StreamCreateFile(true,mem,0,stream.Size,0); showmessage(IntToStr(Channel1)); BASS_ChannelPlay(Channel1, true); // timeisout end; end else MessageDlg('Не найдена искомая процедура!.', mtError,[mbOK], 0); finally // FreeLibrary(DLLInstance); // если не закоментировать то звук воспроизводится рывками end; end;
Code: const n=3; var i:integer; k,s:integer; begin k:=1; for i:=1 to n do begin s:=s+k; k:=k+4; end; writeln (s); end. Элементарно.
Почему 3, а не 9?Возможно это очепятка=) И я бы добавил в конце Readln, чтоб все таки результат остался на экране=)
MAESTRO да это он опечатался ну с кем не бывает кто хоть немного в паскале понимает тот поймет что опечатка... Thenno а тебе огромное спс
ну как я понимаю там просто во второй строчке ну где уже тело програмы там нужно в одном месте умножить вместо плюса
Тема называется задай вопрос, получи ответ и смысл так писать если ты практически не что не написал, если такой умный то сам напиши эту задачку на паскале...а не посты здесь набивай...
А посты здесь никто и не набивает, да согласен с тобой, что тема называется: "Задай вопрос, получи ответ", но вы же просите за вас полностью решать и выдавать готовые исходники, ленитесь даже готовый подобный пример переделать.
парни, помогите...пожалуйста...Турбо Паскаль. укр)Дано матриці А та В цілих чисел, вивести їх у вигляді масивів. Сформувати та вивести третій масив С згідно умови варіанту: рус)Даны матрицы А и У целых чисел, вывести их в виде массивов. Сформировать и вывести третий массив С согласно условия варианта: варіант/вариант: C=А(в квадрате) + В(в степени T) Матрица А(m=3,n=3),В(m=3,n=3) в матрице С обчислить C(минимальное(min))
Хватит оффтопа и флуда! Code: PROGRAM FOR_INC; uses CRT; const n = 10; var tmp: real; result: real; i: byte; begin clrscr; result := 1; tmp := 0.1; for i := 1 to n do begin result := result * tmp; tmp := tmp + 0.4; end; writeln('Result: ', result:2:2); readln; end.
вот что получилось: PS.знаю что лучше было бы min значение присваивать первому ел матрицы,но в данном случае и так прокатит,просто впадло было еще 1 цикл писать
Всем доброго времени суток. Нет ли у кого реализации шифрования текста по алгоритму AES с ключом 128 бит? Желательно с комментариями
Складіть програму для обчислення суми всіх трьохзначних чисел, кратних 25. rus:Составьте программу для вычисления суммы всех трехзначительных чисел, кратных 25. НА ПАСКАЛЕ,плз. написали уже раз, но как сказал препод это Дельфи.. помогииите...
Code: program PoraSamomuUchitsya; var i,k:integer; begin k:=0; i:=100; while i<=1000 do begin k:=k+i; i:=i+25; end; writeln (k); end. Самый оптимальный алгоритм, я думаю. Можешь же самостоятельно писать, пробуй и дальше сам, а то нечему ведь не научишься, честно.
Ему нужно вообще то, чтобы выводилась сумма элементов делящихся на 25 А ты что сделал? Вот ему писали на делфи https://forum.antichat.ru/showthread.php?p=1753598#post1753598 Вообще не пойму, в чём проблема переделать на паскаль? Делфи это и есть обджек паскаль Паскаль на компе не стоит, но вот, должно работать: Code: program PoraSamomuUchitsya; var a:array[1..1000] of integer; i,s:integer; begin for i:=1 to 900 do begin a[i]:=99+i; if a[i] mod 25=0 then begin s:=s+a[i]; end; end; writeln (s); end.
для тебя может и не проблема, а у нас было пропущено 10 лекций...тоесть было 6 лекций, и 16 лабораторных, кучу всего не объяснили...
Я ему что требовалось, то и написал. Только в одном месте немного ошибся, признаю. Code: var i,k:integer; begin k:=0; i:=100; [COLOR=Red]while i<=999 do // тут 999, а не 1000, как было [/COLOR] begin k:=k+i; i:=i+25; end; writeln (k); end. Просто это несколько другой алгоритм, вот и все. Посмотри повнимательней. P.S Мне твой способ кажется каким то... извращенским что ли. Можно проще, без ненужного геморроя с массивами. Code: var i:integer; k:integer; begin k:=0; for i:=100 to 999 do if i mod 25 = 0 then k:=k+i; writeln (k); end.