Consultas, desarrollo de programas y petición de presupuestos:

jueves, 12 de julio de 2012

Tablas de Equivalencias entre Pseudolenguaje y C

Empezamos en C:
Desde el pseudocodigo sustituyo palabras en C: (empezamos partiendo del código del ultimo ejemplo de Tablas o Matrices o Arrays (II)  )

pseudocodigo
C
<inicio>
Int main (int argc,char **argv){
Estamos indicando el punto de entrada de nuestro programa, es la funcion main. El int delante de main, indica que la funcion main devuelve un numero entero.
Entre parentesis: van los argumentos, que hay que indicar el nombre y el tipo.
El primero int argc, indica que el primer argumento es un entero que se llama argc
El **char argv, es el segundo argumento, llamado argv es un puntero a punteros de tipo carácter. En lenguaje simple es una lista de palabras , tabla de palabras.
Cierro el ) indicando que han terminado los argumentos y como es un inicio pongo una { que indica inicio.
Todos los fin (fin mientras, finsino) se codifican }
Nota:
Aquí , en principio va todo en minuscula

pseudocódigo
c
c=0
Int c=0;
d=0
Int d=0;
Num=0
Int num=0;
Termina “;” que es el terminador de instrucción. Donde le digo al compilador que termino lo que le quiero decir.

Pseudocódigo
c

pares(10)=0
Int pares[10]={0,0,0,0,0,0,0,0,0,0}
Porque le indicamos los elementos de partidas
pares(10)
Int pares[10]
Porque no le indicamos elementos de partida

Pseudocódigo
C

Mientras c<10 Y d<10
While (c<10 && d<10) {
Como estoy iniciando algo tengo que poner “{“
Nota si en vez de Y es O
||
Carácter tuberia
Nos tenemos que fabricar nuestras funciones de escribir y leer:
Pseudocódigo
C
Escribir (pedir el numero)
printf(“Introduzca numero”);
Leer el numero
Scanf(“%d”,&num);

La funcion scanf se encarga de leer del teclado.
%d: indica que es un numero entero
Y lo guardan en num

Pseudocódigo
C
Si num%2==0
If ((num%2)==0){

(y la llave es porque empiezo algo)
Los parentecis indican preferencias:
  1. haz num%2, y dara X
  2. comprueba ( X ==0)

psedocódigo
c
pares[c]=num
pares[c]=num;
c++
c++;
sino
} else {
impares[d]=num
impares[d]=num;
d++
d++;
finsi
}
finmientras
}
<fin>
return 0;
}

Ya que al principio definimos que main es una función que devuelve algo, y le tenemos que poner algo para devolver... Por convenio “0” indica que todo ha funcionado perfectamente.

El compilardor te va a dar dos tipos de mensajes: Errores y Avisos
Errores: algo que esta mal.
Ejemplo: que si en vez de “if” le ponemos “f”
que no cuadren los parantesis
que falte “;”
que use comillas simples (´) en vez de comillas doble (“)

Avisos: algo que es potencialmente que esa mal pero es valido.
If ((num%2)=0 ) → estas asignando no comparando “==”
Un programas con Errores no funciones, pero con Avisos si funciona, pero no hara lo que tu querias.

Hay errores que indican otros errores. Por ejemplo si no definimos bien la variable d, dara mas errores en while, y en los demas sitios que aparezca. El compilador dara toda la cadena de errores, hay que corregirlo empezando por el primero, para ver si asi se resuelven los que estan encadenados a ellos


Pseudocódigo
C
Tipos de datos
Tipos de datos
Un carácter
char
Nota:
Para almacenar una palabra tengo que crear una tabla (array) de tipo char
Entero (numero sin decimales)
int
Numer con coma flotante (Con decimales)
float
Declarar una variable:
Siempre el tipo y el nombre y opcionalmente valor inicial
tipo nombre =valorinicial;

Operadores Aritmeticos
Pseudocódigo
C
+

-

*

/

++ (sumo 1)

- - (resto 1)

% (resto de división)


Operadores Relacionales
Pseudocódigos
C
<

>

>=

<=

!=


Operadores lógicos
Pseudocodigo
C
Y
&&
O
||
No
!
Nota:
True y False no existen 0 y 1 es lo que se usa.
Pseudocódigo
C
Escribir
printf
Escribir “Texto”
printf(“Texto”);
Escribir Mayor (el nombre de una variable)
printf(“%d,mayor);
int
%d
float
%f
char
%c
char[]
Cadena de cadenas (arrays/tablas del tipo char)
%s

Nota: estos % tambien son aplicables a leer (scanf)
Escribir “El mayor es”, mayor
printf(“El mayor es %d”,mayor);
% (para escribir “%”)
%%

Ejemplo:
prinft(“El %f%% es %d”,porcentaje,valor);
Puede aparecer asi: (si vale porcentaje:7,41, y valor=3483)
El 7,41% es 3483

Otro ejemplo: multiplicar dos numeros
printf(“%dx%d=%d”,num,numero2,num*numero2)
2x4=8

Caracteres de control
Salto de linea (retrocede y baja a la siguiente linea)
\n
Retroceso de carro (solo retrocede, se queda al principio de la misma linea)
\r
Nota: util para mostrar el % del trabajo realizado para que aparezca en el mismo sitio (misma linea)
Tabulador (salto de tabulación, y por defecto valen 8 caracteres, no saltan 8 caracteres sino al siguiente multiplo de ocho de donde este)
\t
Hacer un Beep
\g
Para poner una barra “\”
\\
Retrocede 1 carácter (no lo borra, si escribo algo si, pero si no , solo retrocede)
\b

Leer del teclado (1 carácter o un numero)
scanf(“%letra”,&variable);
Letra: d,c,f (int,char,float)


Pseudocódigo
C
Si condicion
If (condicion) {
Sino
} else {
Fin si
}



Pseudocódigo
C
c=inicial
c=inicial;
Mientras c<valorfinal
While (c < valorfinal) {
Lineas....
Lineas.....
c++
c++;
Fin mientras
}
Pseudocódigo
C
En caso variable
switch(variable){
Caso valor1
case valor 1:
Lineas....
Lineas....

break;
Caso valor22
Case valor2:
Lineas...
Lineas.....
break;
Oro caso
Default:
Lineas....
Lineas....
Fin caso
}
Nota1:
Sino pongo Break no salta al final del bucle, sino sigue el siguiente caso que tenga Break
Nota2:
Tambien puede ver mas break, en un if por ejemplo.
Case 2
if …. {
...
break
} else {
..
break}

No hay comentarios:

Publicar un comentario