Category Archives: Uncategorized

Casio Algebra FX 2.0. Códigos del teclado: Getkey

Programa para obtener los códigos del teclado de la calculadora.
Un bucle infinito lee el teclado. Si se pulsa la tecla ESC se sale del bucle.

Códigos del teclado de la ALGEBRA FX 2.0

While…WhileEnd. Se encuentran en el menú de programa ([SHIFT] [VARS]) bajo la pestaña [WHLE] (F3)
Break. Está bajo la pestaña [CTRL] (F4)

If…Then…IfEnd. Dos formas de expresarlo:

'La condición se separa por una linea
If X=47
Then Break
IfEnd

'La condición se separa por dos puntos (:)
if x≠0:Then
Locate 9,3,X
IfEnd

Locate columna, linea, algo_para_imprimir.
Se encuentra bajo la pestaña [I/O] (F5)
Columna: 1-21
Linea: 1-7

Está bajo la pestaña [LOGIC] (f5)
La comilla (‘) Está escondida. Botón [OPTN], La pestaña [SYBL] (F4) aparece tras dos [F6 (▷)]

Locate 7,1,"TECLAS"
Locate 1,3,"CODIGO:"
Locate 8,7,"ESC PARA SALIR"

While 1
Getkey→X
If X=47
Then Break
Else
if x≠0:Then
Locate 9,3,"  "
Locate 9,3,X
IfEnd
IfEnd
WhileEnd
ClrText
"TERMINADO"

Nota:
La tecla ESC tiene el código 47.

Función que devuelve un string en Turbo C++

#include <string.h>
#include <stdlib.h>

/*
	Función que devuelve un string con el contenido de 
	un array de unsigned char.
	Includes necesarios:
	<string.h> - para strcpy y strcat
	<stdlib.h> - para itoa
	
	Uso:
	unsigned char tmp[]; // array donde se va a guardar el string
	cprintf("Linea: %s\n\r",getStrLine(3,tmp));
	
	Funciones relacionadas con strings:
	strcpy - Para copiar
	itoa   - Convierte int a string
	strcat - concatena string
	

	Nota:
	La variable donde se va a guardar la cadena tiene que
	declararse fuera de la función y pasarse como parámetro.
	Que luego la devuelva no es necesario pero conveniente.
*/
unsigned char * getStrLine(int y, unsigned char * buffer) {
	char tmp[10]; 			// variable temporal para guardar el string
	
	strcpy(buffer,""); 		//El string se pone como cadena vacia.
	for (int i = 0; i < _w; i++) {
		itoa((int)map[i][y],tmp,10); //El unsigned char se fuerza a (int) y se convierte en string
		strcat(buffer,tmp);			 //se concatena el string
	}
	
	return buffer;
}

Lectura del teclado en Turbo C++

#include <conio.h>
#include <stdio.h>

#define KEY_ENTER 13
#define KEY_ESC 27
#define KEY_SPACE 32
#define KEY_UP 72
#define KEY_LEFT 75
#define KEY_RIGHT 77
#define KEY_DOWN 80

int main(void) {
	int c;

	clrscr();
	cprintf("Pulsa las teclas del cursor\r\n");
	cprintf("Esc para salir\r\n");
	//getch();

	while (1) {
		c = getch();

		if (c==KEY_ESC) {
			return 0;
		}
		if (c == 0 ) {
			c = getch();
		}
		if (c == KEY_ENTER) {
			cprintf("Enter\n\r");
		} else if (c == KEY_LEFT) {
			cprintf ("LEFT\n\r");
		} else if (c == KEY_RIGHT) {
			cprintf ("RIGHT\n\r");
		} else if (c == KEY_UP) {
			cprintf ("UP\n\r");
		} else if (c == KEY_DOWN) {
			cprintf ("DOWN\n\r");
		} else if (c == KEY_SPACE) {
			cprintf ("Space\n\r");
		} else {
			cprintf("%d\n\r",c);
		}
	}

	return 0;

}