Sei sulla pagina 1di 25

FUNDAMENTOS DE PROGRAMACIN

Contenido

Introduccin

Variables y Constantes

Entrada y salida de datos

Operadores de comparacin y Lgicos

Estructuras de control: Condicionales e Iterativas

Arreglos: Vectores y matrices

Funciones

Cadena de Caracteres

Estructuras

Archivos

Introduccin
Scilab es un programa desarrollado por INRIA y ENPC de Francia
para el clculo numrico, programacin y grficos. Es similar a
MATLAB y Octave, es utilizado en Windows, Linux, Unix, etc.
Caractersticas principales
rogramacin con lenguaje simple y fcilmente asimilable.
ermite operaciones diversas operaciones matriciales.
osee capacidades de generacin de grficos en dos y tres
dimensiones.
Links de descarga:
http://www.scilab.org/
http://scilabsoft.inria.fr.

Entorno de Scilab

Variables

En Scilab las variables no son nunca declaradas: su tipo y su


tamao cambian de forma dinmica de acuerdo con los
valores que le son asignados.
As, una misma variable puede ser utilizada, por ejemplo, para
almacenar un nmero complejo, luego una matriz de nmeros
enteros y luego para almacenar un texto.
Las variables se crean automticamente al asignarles un
contenido. Asimismo, es posible eliminar una variable de la
memoria si ya no se utiliza.
Var=5
Var=9.2
Var=[1 3 6 7]
var=Mensaje de texto

Tipo entero
Tipo real (float)
Tipo vector
Tipo cadena(string)

Ejemplo:
La variable a va
cambiando su tipo y
no necesita ser
declarada
previamente.

Constantes

Las constantes que existen en scilab son:

%i representa la parte imaginaria.

%pi representa el valor 3,1416.

%e representa el valor de euler 2,7182.

Para valores lgicos:

%t representa verdadero.

%f representa falso.

Comentarios

Descripciones colocadas por el programador, son


omitidas por el interprete de scilab.

//Esto es un comentario

Entrada y salida de datos


Funcin input()
Se utiliza para que el programa pida valores de entrada a
las variables mientras se ejecuta.
Sintaxis :
Para ingresar valores tipo numricas
variable_numrica = input('texto');
Para ingresar cadenas de texto
variable_cadena = input('texto','s');
Ejemplo:
numero=input('Ingrese un numero: ');
cadena=input('Ingrese un texto: ','s');

Funciones disp() y printf()


Muestran datos de salida por pantalla.
disp: Muestra el valor de los datos sin formato

Sintaxis:

disp(nombre_variable o 'texto');

printf: Muestra los datos de salida formateados.

Sintaxis:

printf('Texto:%s numero:%d\n',varCad,varNum);

Formato para Variables


%s Muestra contenido de variables tipo cadena de caracteres.
%d Muestra contenido de variables tipo numricas.
%c Muestra el contenido de variables tipo carcter
\n Caracter de salto de lnea(un enter).

Ejemplos:

Las variables no van


con comillas
simples.
Un texto cualquiera
va con comillas
simples.
Uso de printf

Operadores de
comparacin

Operadores Lgicos

Rangos
Ejemplos:
on argumentos tipo numricos
dedicados a contar.
e usan en estructuras for.

Contadores y Acumuladores

Contador
Acumulador

Se
suele
denominar Variable cuyo valor se
contador
cuando
el incrementa o decrementa en
incremento de la variable un valor fijo (en cada
es de uno en uno.
iteracin de un bucle).

Sintaxis:

variable = variable + 1;

Sintaxis:

variable=variable + valor

variable=variable - valor

variable=variable * valor

variable=variable / valor

Nota: Los contadores y acumuladores son variables que se necesitan inicializar


con algn valor y son muy utilizados en los lazos de repeticin.

Nmeros Aleatorios

Son nmeros obtenidos al azar.


La funcin rand() genera nmeros aleatorios
entre 0 y menor a 1.
Sintaxis:
min+fix(rand()*(max-min+1));
min: nmero mnimo a generar.
max: nmero mximo a generar.
fix(): funcin que redondea a nmero ms cercano a 0.
rand(): funcin que genera un nmero aleatorio con decimales entre 0 y menor a 1 .

Ejemplo:
Generar 10 nmeros aleatorios entre 5 y 23

for i=1:10
Genera un nmero aleatorio
entre 5 y 23.
aleatorio=5+fix(rand()*(23-5+1));
disp(aleatorio);
Muestra cada nmero aleatorio generado.
end

Estructura for que se repite 10 veces y va generando en cada repeticin


un nmero aleatorio entre 5 y 23 y lo va mostrando con la funcin disp.

Funciones Elementales

Estructuras de Control Condicionales


Permiten la ejecucin de un conjunto de instrucciones
si se cumple una condicin
Sentencia if
if condicin [then]

if condicin [then]

Instrucciones;

Instrucciones;

Instrucciones;
end

if condicin1 [then]

elseif condicin2

else

Instrucciones;

Instrucciones;
end

else
Instrucciones;
end

Nota: then es opcional, puede ser reemplazada por un salto de lnea .

Sentencia select o CASE

select variable
case valor1 [then]
Instruciones1;
case valor2 [then]
Instruciones2;
case valor3 [then]
Instruciones3;
..
..
else
Instruciones;
end

Esta sentencia
compara el valor de
variable con cada valor
de los cases y si
coincide con uno,
ejecuta las
instrucciones de dicho
case, caso contrario
ejecuta las
instrucciones de else.
Los valores de case
pueden ser enteros o
strings.

Ejemplos:
disp('Control de Estudiantes');
disp('1. Registrar estudiante');
disp('2. Consultar estudiante');
disp('3. Salir');

disp('Control de Estudiantes');
disp('1. Registrar estudiante');
disp('2. Consultar estudiante');
disp('3. Salir');

opc=input('Ingrese una opcion: ');

opc=input('Ingrese una opcion: ');

if opc==1
disp('Ha ingresado en Opcion 1');
elseif opc==2
disp('Ha ingresado en Opcion 2');
elseif opc==3
disp('Fin del Programa');
else
disp('Otra opcion');
end

select opc
case 1
disp('Ha ingresado en Opcion 1');
case 2
disp('Ha ingresado en Opcion 2');
case 3
disp('Fin del Programa');
else
disp('Otra opcion');
end

Estructuras de Control Repetitivas


Son estructuras que repiten instrucciones de cdigo segn
una condicin lgica o un rango de valores.

Estructura for
Estructura que repite
instrucciones hasta llegar al fin
del rango.

Estructura while
Estructura que repite
instrucciones mientras la
condicin sea verdadera.

for ndice=rango
while condicin
Instrucciones;
Instrucciones;
end
end

Ejemplos:
Realice un programa que muestre los cinco primeros nmeros
naturales y la suma. usando while.
Solucin :
veces=0;
numero=1;
suma=0;

Contadores
Acumulador de la suma

while veces<5
printf('%d\n',numero);
suma=suma+numero;
numero=numero+1;
veces=veces+1;
end
printf('La suma es: %d\n',suma);

Realice un programa que invierta un numero dado.


Ejemplo: 467
---> 764
Solucin :
disp('Numero Invertido');
numero=input('Ingrese un numero:');
invertido=0;
while numero~=0
digito=modulo(numero,10);
invertido=(invertido*10)+digito;
numero=fix(numero/10);
end
printf('El numero invertido es:%d\n',invertido);

modulo(m,n), funcin que


extrae el ltimo dgito del
nmero.
invertido almacena el
nuevo nmero invertido
y fix(n) es una funcin
que redondea al entero
ms cercano a cero

Realice un programa que dado un nmero de n trminos genere la


suma de la siguiente serie: 12+22+32+... +n2
Solucin :

suma=0;

Acumulador de la suma

for termino=1:n
suma=suma+termino^2;
end

for que se repite n veces


desde 1a n.

printf('La suma de la serie es: %d\n',suma);

Referencias

http://aozora-inv.livejournal.com/1315.html
http://personal.us.es/echevarria/documentos/Ap
untesScilab.pdf
http://docencia-eupt.unizar.es/ctmedra/manual_scilab.pdf

Potrebbero piacerti anche