Программируем

Пожалуйста, зарегистрируйтесь или войдите под уже созданным логином. Вы получите полный доступ ко всем статьям форума.

Join the forum, it's quick and easy

Программируем

Пожалуйста, зарегистрируйтесь или войдите под уже созданным логином. Вы получите полный доступ ко всем статьям форума.

Программируем

Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Программируем

На нашем форуме программистов вы сможете найти софт для программирования и другие программы. На форуме обсуждаются многие языки программирования, задачи и их решения. Используются языки: C, Assembler, Pascal, Delphi, Flash и другие.

Последние темы

» Арена искусственных интеллектов Gridwars
Звуковые возможности модуля Crt EmptyСр Окт 12, 2016 2:43 am автор SeriousPasha

» требуется несколько JS разработчиков
Звуковые возможности модуля Crt EmptyПт Окт 07, 2016 10:19 pm автор mrktwn1

» Защита приложения от взлома
Звуковые возможности модуля Crt EmptyЧт Июн 18, 2015 10:28 pm автор stradi

» Ищите программиста или дизайнера?
Звуковые возможности модуля Crt EmptyПт Мар 27, 2015 6:25 am автор фриланс

» Создание и продвижение сайтов, их развитие.
Звуковые возможности модуля Crt EmptyСр Мар 25, 2015 12:40 am автор asdfghhgfdsa

» Исходники для студентов + скайп-консультации,помощь в написании программ
Звуковые возможности модуля Crt EmptyВт Окт 07, 2014 11:25 pm автор Horpion

» IT- технологии для развития бизнеса
Звуковые возможности модуля Crt EmptyПн Июн 23, 2014 6:11 pm автор dvos12

» Стенли Кубрик "С Широко закрытыми Глазами"
Звуковые возможности модуля Crt EmptyЧт Июн 12, 2014 2:01 am автор Vertuozzz

» Каталог популярных хостинг компаний
Звуковые возможности модуля Crt EmptyСб Май 10, 2014 7:18 pm автор naik

Самые активные пользователи

Aster (142)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
Exkalibur (89)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
Чебурашка (63)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
Administrator (34)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
ak95 (8)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
Пушкин (7)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
K4_ (7)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
LuDa (7)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
Goldcoding (6)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 
Admin (6)
Звуковые возможности модуля Crt Bar_leftЗвуковые возможности модуля Crt BarЗвуковые возможности модуля Crt Bar_right 

Партнеры

Звуковые возможности модуля Crt Top100 Rambler's Top100

Участников: 3

    Звуковые возможности модуля Crt

    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Вт Мар 09, 2010 9:18 pm

    в модуле crt определены 2 процедуры (sound и nosound) для работы с внутренним громкоговорителем.
    Если использовать процедуру Sound, то нужно прописать синтаксис - Sound(частота), а процедура nosound служит для включения внутреннего динамика и не имеет параметров.
    приведу пример программы, пусть нужно проиграть малую октаву с длительностью звучания нот в 1 секунду.

    Код:
    program make_sounds;
    uses crt;
    const
    Hz_Note:array[1..7] of real=
    (130.81,146.83,164.81,174.61,196.00,220.00,246.94);
    var
      i:Byte;
    begin
     for i:=1 to 7 do begin
      sound (round(Hz_Note[i]));
    delay(500);
    end;
    nosound
    end.
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Aster Вт Мар 09, 2010 9:25 pm

    Спасибо за темку, полезно) Только вот зачем задавать в массив числа с сотыми долями, а потом их округлять???? не легче ли сразу добавить целые числа?
    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Вт Мар 09, 2010 9:53 pm

    можно и так, но это сделано преднамеренно, ведь это не просто числа с плавающей запятой, а точная частота ноты в октаве, изменение её приведет к нескольким искажениям звука (так например профессиональный музыкант может слышать до тысячной доли знака), но так как мы все таки не профессионалы и измерять не будем, то этим можно принебречь
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Aster Вт Мар 09, 2010 9:55 pm

    Тогда правильнее будет писать sound (Hz_Note[i]);
    Так нота будет звучать с наиболее приближенной к реальной частотой, как по настоящему, насколько я понимаю.
    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Вт Мар 09, 2010 10:14 pm

    дело в том, что процедура sound имеет параметр частота, которая по умолчанию имеет тип Word, а он насколько я понимаю целочисленный, поэтому появляется необходимость округления
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Aster Вт Мар 09, 2010 10:20 pm

    Ну тогда понятно)))
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Aster Вс Мар 14, 2010 2:15 am

    Решил попробовать вашу программу в деле, нашел несколько багов. Во-первых не 'erray', а 'array' (уже отредактировал) и вместо delay(500) нужно поставить число, как минимум в 100 раз больше, лучше всего использовать 65535 (максимальное значение для delay), иначе ноты можно просто не услышать.
    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Вс Мар 14, 2010 11:32 am

    Спасибо за исправление , действительно дельное Smile
    Embarassed
    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Вс Мар 14, 2010 11:41 am

    а вобще интересно, delay по идее измеряется в милисекундах, значит 500 - это примерно 0,5 секунд - ну тогда да, маловато будет, можно попробовать увеличить хотя бы до 3 секунд - то есть delay (3000), больше наверное пауза большая будет
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Aster Вс Мар 14, 2010 5:26 pm

    при 65535 пауза еле заметная.
    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Вс Мар 14, 2010 10:49 pm

    странно, сейчас у себя попробовала, у меня все нормуль, странно, может это от версии зависит или можно как то этот модуль редактировать что - ли?
    Aster
    Aster
    Admin
    Admin


    Сообщения : 142
    Очки : 274
    Репутация : 11
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Aster Пн Мар 15, 2010 12:23 am

    может быть)
    Administrator
    Administrator
    Admin
    Admin


    Сообщения : 34
    Очки : 142
    Репутация : 4
    Дата регистрации : 2010-01-07

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Administrator Пн Мар 15, 2010 2:48 am

    Эм... на сколько знаю это зависит от ПО. Например при запуске одной и той же программы в Borlan Pascal и Turbo Pascal delay работал по разному.
    Exkalibur
    Exkalibur
    Почетный пользователь
    Почетный пользователь


    Сообщения : 89
    Очки : 144
    Репутация : 13
    Дата регистрации : 2010-02-28
    Возраст : 33
    Откуда : Красноярск

    Звуковые возможности модуля Crt Empty Re: Звуковые возможности модуля Crt

    Сообщение автор Exkalibur Пн Мар 15, 2010 2:54 pm

    ну вот видимо в этом и причина такого разнообразия решения, хоть у меня и Turbo Pascal, но какая-то новая версия под Windows 7, вот такая ерунда и возникает Smile

      Текущее время Пт Май 03, 2024 9:03 am