2
« en: Viernes 30 de Septiembre de 2011, 20:45 »
bueno
primero que nada gracias por visitar este pequeño post que puse en su foro
ESTOY EMPEZANDO A PROGRAMAR EN C
el problema es que en la escuela el maestro nos impone a que programemos en turbo c vercion 3
y yo uso linux por lo tanto no puedo probar los programas en mi maquina
sin embargo me compre un libro para programar con el standar de c
ANSCI
Y ME DEJARON programar un mini piano en la octaba numero 6 con las notas si sus sostenidos
el programa yo lo tengo ya hecho y quisiera ver si ustedes me pueden ayudar a pasarlo al standar o por lo menos que me ayuden a correrlo con linux
#include <conio.h>
#include <stdio.h>
#include <dos.h>
#include <math.h>
float frecuencia(float n, float o);
void main()
{
float f;
char nota;
while (1)
{
clrscr();
printf("programa que convierte los numeros en notas tocadas en la sexta");
gotoxy(1,2);
printf("Do=1, Re=2, Mi=3, Fa=4, Sol=5, La=6, Si=7");
gotoxy(1,3);
printf("favor de introducir la nota: ");
gotoxy(1,4);
printf("teclea 8 si deseas salir");
nota=getch();
gotoxy(1,6);
printf("");
switch(nota)
{
case 49:f=frecuencia (1,6); sound(f); delay(500);clrscr();break;
case 50:f=frecuencia (2,6); sound(f); delay(500);clrscr();break;
case 51:f=frecuencia (3,6); sound(f); delay(500);clrscr();break;
case 52:f=frecuencia (4,6); sound(f); delay(500);clrscr();break;
case 53:f=frecuencia (5,6); sound(f); delay(500);clrscr();break;
case 54:f=frecuencia (6,6); sound(f); delay(500);clrscr();break;
case 55:f=frecuencia (7,6); sound(f); delay(500);break;
case 56:goto fin;break;
default: printf("el numero que marcaste no entra en el rango antes mencionado");
}
nosound();
}
fin:
//getch();
//return 0;
}
float frecuencia(float n, float o)
{
float f;
f=(440.0*exp((o-3)+(n-10)/12)*log(2));
//printf("tu frecuencia es de: %.6f",f);
return(f);
}
gracias