Programación General > Pascal

 Procedure #1. Beep.

<< < (2/2)

FSR:
¿Has probado lo siguiente?


--- Código: Text ---Procedure Beep;    Begin        Write(#7);    End; {Beep} 
Saludos ;)

Amilius:
Bueno este es uno de mis código antiguos para turbo pascal 7.
Si quieren tocar cualquiera de las 84 notas de un piano ojo va de [0..83]:
Nota: para afinar, cambien el 64 a un valor mayor o menor, como vean conveniente.

Lo de 2 elevado a nota/12 es cuestión de fijarse en las matemáticas simples de la música. son 12 tonos : 7notas + 5semitonos.


--- Código: Text ---  FUNCTION ELEVAR(BASE,EXPONENTE:REAL):REAL;{cambiar a double o single o el flotante que convenga}BEGIN   ELEVAR:=EXP(LN(BASE)*EXPONENTE)END;  PROCEDURE MUSICA(nota:byte);{OJO que no tiene delay ni nosound}BEGIN  IF nota&#60;84 THEN SOUND(ROUND(ELEVAR(2,nota/12)*64{Afinar}))END;   

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa