SlideShare une entreprise Scribd logo
1  sur  56
Fundamentos de Computación (ICM)   con GNU Octave ,[object Object],[object Object]
[object Object]
Condicionales
Lazos de Repetición
Acumuladores y Contadores
Aleatorios
Arreglos una dimensión
Arreglos de dos dimensiones o Matrices
Caracteres y Cadenas
Funciones
Condicionales Múltiples(switch)
Funciones Recursivas
Estructuras
Archivos Contenido
Introducción GNU Octave  es un lenguaje de alto nivel destinado al cálculo numérico, tiene un interprete(consola) que resuelve dichos cálculos numéricos, además permite la ejecución de scripts realizados por el usuario. Posee el mismo lenguaje de programación que MATLAB(lenguaje M), esto permite una alta compatibilidad entre ellos. Es un software libre (cero costo) y esta disponible en diferentes plataformas como Linux, Windows y MacOsX.
[object Object]
La sintaxis es la misma utilizada en MATLAB.
No pasa valores por referencia solo por valor.
Es un lenguaje interpretado.
Se pueden crear scripts.
Soporta gran parte de las funciones de la biblioteca estándar de C .
Primeros pasos en Octave ,[object Object],ans  ( answer ) es una variable interna del  programa que guarda el valor  de una operación. Resultado de la suma 4+2
Variables ,[object Object],Tipo escalar(numérica) Tipo vector(arreglo) Tipo cadena de texto
[object Object]
Ej: total1, contador
Octave diferencia los nombres de variables en mayúsculas y minúsculas. Ej: var1, Var1 y VAR1
Las instrucciones deben terminar en  punto y coma  ;  .
Los comentarios  se colocan con  %  o  # .
Ej:  %esto es un comentario  y  # esto es otro comentario
Entrada y salida de datos ,[object Object]
Se utiliza para que el programa pida valores de entrada a variables mientras se ejecuta.
Sintaxis :   ,[object Object]
variable_numérica  =  input ( 'texto' );
Para ingresar cadenas de texto
variable_cadena  =  input ( 'texto','s' );  ,[object Object],[object Object]
cad = input ( 'Ingrese un texto: ', 's' );
Entrada y salida de datos ,[object Object]
Muestran datos de salida por pantalla.
Sintaxis :
disp ( nombre_variable  o  'texto' );
fprintf muestran datos de salida formateados.
Sintaxis:
fprintf ( 'texto:%s numero:%d' ,varCad,varNum); %s  muestra contenido de variables tipo texto,   %d  muestra contenido de variables tipo numéricas y    hace un salto de línea(un enter) .
Rangos ,[object Object]
Se usan en estructuras for.
Se pueden crear vectores filas.
Sintaxis:
valor_inicial : salto : valor_final
Si no se coloca un valor salto el valor por defecto será “1”. ,[object Object],Rango con salto positivo Rango con salto negativo Rango sin salto
Operadores Lógicos Operador Descripción x < y x es menor que y. x <= y x es menor o igual que y. x == y x es igual que y. x > y x es mayor que y. x >= y x es mayor o igual que y. x ~= y  x != y  x <> y x no es igual a y.
Operador Descripción x & y Retorna 1 si “x” y “y” son verdaderos caso contrario retorna 0. x | y Retorna 0 si “x” y “y” son falsos caso contrario retorna 1. ~x  !x Retorna el valor 0 si x vale 1 o 1 si x vale 0. Operadores Booleanos “ short-circuit&quot; Similar a los anteriores con la diferencia que solo basta con analizar el valor del primer elemento ( “x” ) para saber el resultado  x && y Retorna 1 si “x” y “y” son verdaderos caso contrario retorna 0. x || y Retorna 0 si “x” y “y” son falsos caso contrario retorna 1. Operadores Booleanos
[object Object],if   condición Instrucciones; else Instrucciones; end if   condición Instrucciones; end if   condición1 Instrucciones; elseif   condición2 Instrucciones; else Instrucciones; end Nota:  Para cualquiera de las estructuras de control los paréntesis  puede omitirse y el fin de la estructura (end) puede colocarse  end[nombre de la estructura] ( endif, endfor, endwhile ).
[object Object],a=2; if   a==2 disp('a vale 2'); end num= input('Ingrese un número: '); if   mod(num,2)==0 disp('El número es par'); else disp('El número es impar'); end disp() Muestra un mensaje por pantalla. Condición por verdad.
for   índice=rango Instrucciones; end while  condición Instrucciones; end do  Instrucciones; until  condición Estructura   for Estructura   while Estructura   do-until Estructura que repite sus instrucciones hasta llegar al fin del  rango . Estructura que repite sus instrucciones mientras la condición sea  verdadera . Estructura que repite sus instrucciones hasta que la condición sea  falsa . ,[object Object],[object Object]
[object Object],suma=0; for   i=1:5 suma=suma+i; end disp(suma); suma=0; i=1; while   (i<=5) suma=suma+i; i=i+1;  end disp(suma); i incrementa el valor de i en 1 La expresión  i=1:5  indica que: i es la variable que inicia en 1  y termina en 5 con incrementos  de 1, es un rango.
do x=0; valor=input('Ingrese un entero positivo: ','s'); if ( ~isletter(valor))    valor=str2num(valor); else   disp('Error!, Ingreso un caracter o una cadena de caracteres');   x=1;  end if(valor<0)   disp('Error!, Ingrese un valor positivo'); end until  (valor>0 & x==0) disp('Dato valido! , Ingreso Exitoso!'); Programa que valida si el ingreso es un número, caso contrario muestra un error! y se mantiene hasta que ingrese un número.

Contenu connexe

Tendances

Pseudocodigos 10 ejemplos
Pseudocodigos 10 ejemplosPseudocodigos 10 ejemplos
Pseudocodigos 10 ejemplos
Dulcevelazquez6
 
G2.3 calculo de volumen de revolucion, metodo de arandelas2.docx
G2.3   calculo de volumen de revolucion, metodo de arandelas2.docxG2.3   calculo de volumen de revolucion, metodo de arandelas2.docx
G2.3 calculo de volumen de revolucion, metodo de arandelas2.docx
Jesse Lem
 
DERIVADAS PARCIALES DE ORDEN SUPERIOR
DERIVADAS PARCIALES DE ORDEN SUPERIORDERIVADAS PARCIALES DE ORDEN SUPERIOR
DERIVADAS PARCIALES DE ORDEN SUPERIOR
Ethel Sullcaray
 
Trabajo ecuaciones
Trabajo ecuacionesTrabajo ecuaciones
Trabajo ecuaciones
Miguel Doria
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
1002pc3
 
Clasificación de las ecuaciones diferenciales
Clasificación de las ecuaciones diferencialesClasificación de las ecuaciones diferenciales
Clasificación de las ecuaciones diferenciales
jesusamigable
 
Investigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametricaInvestigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametrica
M Marcos
 

Tendances (20)

METODOS NUMERICOS para ingenieria -Chapra
METODOS NUMERICOS para ingenieria -ChapraMETODOS NUMERICOS para ingenieria -Chapra
METODOS NUMERICOS para ingenieria -Chapra
 
Pseudocodigos 10 ejemplos
Pseudocodigos 10 ejemplosPseudocodigos 10 ejemplos
Pseudocodigos 10 ejemplos
 
Ecuaciones homogeneas
Ecuaciones homogeneasEcuaciones homogeneas
Ecuaciones homogeneas
 
G2.3 calculo de volumen de revolucion, metodo de arandelas2.docx
G2.3   calculo de volumen de revolucion, metodo de arandelas2.docxG2.3   calculo de volumen de revolucion, metodo de arandelas2.docx
G2.3 calculo de volumen de revolucion, metodo de arandelas2.docx
 
DERIVADAS PARCIALES DE ORDEN SUPERIOR
DERIVADAS PARCIALES DE ORDEN SUPERIORDERIVADAS PARCIALES DE ORDEN SUPERIOR
DERIVADAS PARCIALES DE ORDEN SUPERIOR
 
Trabajo ecuaciones
Trabajo ecuacionesTrabajo ecuaciones
Trabajo ecuaciones
 
Ecuaciones diferenciales resueltas con transformada de laplace
Ecuaciones diferenciales resueltas con transformada de laplaceEcuaciones diferenciales resueltas con transformada de laplace
Ecuaciones diferenciales resueltas con transformada de laplace
 
Ecuaciones Diferenciales Lineales
Ecuaciones Diferenciales LinealesEcuaciones Diferenciales Lineales
Ecuaciones Diferenciales Lineales
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
 
G5 oscilaciones
G5 oscilacionesG5 oscilaciones
G5 oscilaciones
 
Pseint
PseintPseint
Pseint
 
Clasificación de las ecuaciones diferenciales
Clasificación de las ecuaciones diferencialesClasificación de las ecuaciones diferenciales
Clasificación de las ecuaciones diferenciales
 
Investigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametricaInvestigacion derivada-de-una-curva-en-forma-parametrica
Investigacion derivada-de-una-curva-en-forma-parametrica
 
Lista de raptor sus comandos y su función
Lista de raptor sus comandos y su funciónLista de raptor sus comandos y su función
Lista de raptor sus comandos y su función
 
arreglos y matrices
arreglos  y matricesarreglos  y matrices
arreglos y matrices
 
Ecuaciones diferenciales exactas
Ecuaciones diferenciales exactasEcuaciones diferenciales exactas
Ecuaciones diferenciales exactas
 
Ejercicios plano tangente
Ejercicios plano tangenteEjercicios plano tangente
Ejercicios plano tangente
 
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
ecuaciones diferenciales de variables separables y ecuaciones diferenciales r...
 
Trabajo integrador final calculo diferencial ups
Trabajo integrador final calculo diferencial upsTrabajo integrador final calculo diferencial ups
Trabajo integrador final calculo diferencial ups
 
Métodos numéricos. Unidad 2.
Métodos numéricos. Unidad 2.Métodos numéricos. Unidad 2.
Métodos numéricos. Unidad 2.
 

En vedette

Analisis de riesgo informatico con OCTAVE
Analisis de riesgo informatico con OCTAVEAnalisis de riesgo informatico con OCTAVE
Analisis de riesgo informatico con OCTAVE
Fluidsignal Group S.A.
 
Clase de turbo C
Clase de turbo CClase de turbo C
Clase de turbo C
tacubomx
 

En vedette (20)

Analisis Riesgo Metodología OCTAVE
Analisis Riesgo Metodología OCTAVEAnalisis Riesgo Metodología OCTAVE
Analisis Riesgo Metodología OCTAVE
 
Conteo de tráfico
Conteo de tráficoConteo de tráfico
Conteo de tráfico
 
Introduccion al Octave
Introduccion al OctaveIntroduccion al Octave
Introduccion al Octave
 
Fundamentos de programación en scilab
Fundamentos de programación en scilabFundamentos de programación en scilab
Fundamentos de programación en scilab
 
Analisis de riesgo informatico con OCTAVE
Analisis de riesgo informatico con OCTAVEAnalisis de riesgo informatico con OCTAVE
Analisis de riesgo informatico con OCTAVE
 
Ecuaciones de Lorenz en Octave
Ecuaciones de Lorenz en OctaveEcuaciones de Lorenz en Octave
Ecuaciones de Lorenz en Octave
 
Clase de turbo C
Clase de turbo CClase de turbo C
Clase de turbo C
 
Software libre para investigación y educación en ingeniería química: GNU Octa...
Software libre para investigación y educación en ingeniería química: GNU Octa...Software libre para investigación y educación en ingeniería química: GNU Octa...
Software libre para investigación y educación en ingeniería química: GNU Octa...
 
SOFTWARE LIBRE COMO MODELO DE AUTONOMÍA
SOFTWARE LIBRE COMO MODELO DE AUTONOMÍASOFTWARE LIBRE COMO MODELO DE AUTONOMÍA
SOFTWARE LIBRE COMO MODELO DE AUTONOMÍA
 
PROCESO SISTÉMICO DE LA ADMINISTRACIÓN
PROCESO SISTÉMICO DE LA ADMINISTRACIÓNPROCESO SISTÉMICO DE LA ADMINISTRACIÓN
PROCESO SISTÉMICO DE LA ADMINISTRACIÓN
 
Aprendizaje
AprendizajeAprendizaje
Aprendizaje
 
SCRUM PARA ALTOS EJECUTIVOS Y DIRECTIVOS
SCRUM PARA ALTOS EJECUTIVOS Y DIRECTIVOSSCRUM PARA ALTOS EJECUTIVOS Y DIRECTIVOS
SCRUM PARA ALTOS EJECUTIVOS Y DIRECTIVOS
 
Seguridad informatica
Seguridad informaticaSeguridad informatica
Seguridad informatica
 
DIAGNÓSTICO DE LA CUENCA GRIJALVA USUMACINTA
DIAGNÓSTICO DE LA CUENCA GRIJALVA USUMACINTADIAGNÓSTICO DE LA CUENCA GRIJALVA USUMACINTA
DIAGNÓSTICO DE LA CUENCA GRIJALVA USUMACINTA
 
TEORIA GENERAL DE LOS SISTEMAS
TEORIA GENERAL DE LOS SISTEMASTEORIA GENERAL DE LOS SISTEMAS
TEORIA GENERAL DE LOS SISTEMAS
 
Riesgos corporativos prosol_jr_2016
Riesgos corporativos prosol_jr_2016Riesgos corporativos prosol_jr_2016
Riesgos corporativos prosol_jr_2016
 
Banco de la nacion
Banco de la nacionBanco de la nacion
Banco de la nacion
 
¿Gestión de Riesgos: cómo manejar las incertidumbres del proyecto?
¿Gestión de Riesgos: cómo manejar las incertidumbres del proyecto?¿Gestión de Riesgos: cómo manejar las incertidumbres del proyecto?
¿Gestión de Riesgos: cómo manejar las incertidumbres del proyecto?
 
¿MATLAB? Yo uso Octave UPM
¿MATLAB? Yo uso Octave UPM¿MATLAB? Yo uso Octave UPM
¿MATLAB? Yo uso Octave UPM
 
Riesgos
RiesgosRiesgos
Riesgos
 

Similaire à Fundamentos de computación(ICM) en octave (20)

Estructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacionEstructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacion
 
APUNTES DE MATHLAB.pdf
APUNTES DE MATHLAB.pdfAPUNTES DE MATHLAB.pdf
APUNTES DE MATHLAB.pdf
 
Presentación de matlab electromagnetismo ...
Presentación de matlab electromagnetismo                                     ...Presentación de matlab electromagnetismo                                     ...
Presentación de matlab electromagnetismo ...
 
Luis Gamboa
Luis  GamboaLuis  Gamboa
Luis Gamboa
 
Programacion matlab
Programacion matlabProgramacion matlab
Programacion matlab
 
Intro_Matlab_1.pdf
Intro_Matlab_1.pdfIntro_Matlab_1.pdf
Intro_Matlab_1.pdf
 
Módulo 4 (sin estilo)
Módulo 4 (sin estilo)Módulo 4 (sin estilo)
Módulo 4 (sin estilo)
 
Presentación1
Presentación1Presentación1
Presentación1
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenes
 
Algoritmos y programas ing civil
Algoritmos y programas ing civil Algoritmos y programas ing civil
Algoritmos y programas ing civil
 
Escuela
EscuelaEscuela
Escuela
 
Escuela
EscuelaEscuela
Escuela
 
Apuntesmatlab
ApuntesmatlabApuntesmatlab
Apuntesmatlab
 
Introduccion a Matlab
Introduccion a MatlabIntroduccion a Matlab
Introduccion a Matlab
 
Módulo 4
Módulo 4Módulo 4
Módulo 4
 
Módulo 4
Módulo 4Módulo 4
Módulo 4
 
Matlab
MatlabMatlab
Matlab
 
Clase 6
Clase 6Clase 6
Clase 6
 
Clase 10
Clase 10Clase 10
Clase 10
 
Matlab2
Matlab2Matlab2
Matlab2
 

Dernier

2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
UPTAIDELTACHIRA
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
jlorentemartos
 

Dernier (20)

Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Diapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundariaDiapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundaria
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 

Fundamentos de computación(ICM) en octave

  • 1.
  • 2.
  • 8. Arreglos de dos dimensiones o Matrices
  • 15. Introducción GNU Octave es un lenguaje de alto nivel destinado al cálculo numérico, tiene un interprete(consola) que resuelve dichos cálculos numéricos, además permite la ejecución de scripts realizados por el usuario. Posee el mismo lenguaje de programación que MATLAB(lenguaje M), esto permite una alta compatibilidad entre ellos. Es un software libre (cero costo) y esta disponible en diferentes plataformas como Linux, Windows y MacOsX.
  • 16.
  • 17. La sintaxis es la misma utilizada en MATLAB.
  • 18. No pasa valores por referencia solo por valor.
  • 19. Es un lenguaje interpretado.
  • 20. Se pueden crear scripts.
  • 21. Soporta gran parte de las funciones de la biblioteca estándar de C .
  • 22.
  • 23.
  • 24.
  • 26. Octave diferencia los nombres de variables en mayúsculas y minúsculas. Ej: var1, Var1 y VAR1
  • 27. Las instrucciones deben terminar en punto y coma ; .
  • 28. Los comentarios se colocan con % o # .
  • 29. Ej: %esto es un comentario y # esto es otro comentario
  • 30.
  • 31. Se utiliza para que el programa pida valores de entrada a variables mientras se ejecuta.
  • 32.
  • 33. variable_numérica = input ( 'texto' );
  • 35.
  • 36. cad = input ( 'Ingrese un texto: ', 's' );
  • 37.
  • 38. Muestran datos de salida por pantalla.
  • 40. disp ( nombre_variable o 'texto' );
  • 41. fprintf muestran datos de salida formateados.
  • 43. fprintf ( 'texto:%s numero:%d' ,varCad,varNum); %s muestra contenido de variables tipo texto, %d muestra contenido de variables tipo numéricas y hace un salto de línea(un enter) .
  • 44.
  • 45. Se usan en estructuras for.
  • 46. Se pueden crear vectores filas.
  • 48. valor_inicial : salto : valor_final
  • 49.
  • 50. Operadores Lógicos Operador Descripción x < y x es menor que y. x <= y x es menor o igual que y. x == y x es igual que y. x > y x es mayor que y. x >= y x es mayor o igual que y. x ~= y x != y x <> y x no es igual a y.
  • 51. Operador Descripción x & y Retorna 1 si “x” y “y” son verdaderos caso contrario retorna 0. x | y Retorna 0 si “x” y “y” son falsos caso contrario retorna 1. ~x !x Retorna el valor 0 si x vale 1 o 1 si x vale 0. Operadores Booleanos “ short-circuit&quot; Similar a los anteriores con la diferencia que solo basta con analizar el valor del primer elemento ( “x” ) para saber el resultado x && y Retorna 1 si “x” y “y” son verdaderos caso contrario retorna 0. x || y Retorna 0 si “x” y “y” son falsos caso contrario retorna 1. Operadores Booleanos
  • 52.
  • 53.
  • 54.
  • 55.
  • 56. do x=0; valor=input('Ingrese un entero positivo: ','s'); if ( ~isletter(valor)) valor=str2num(valor); else disp('Error!, Ingreso un caracter o una cadena de caracteres'); x=1; end if(valor<0) disp('Error!, Ingrese un valor positivo'); end until (valor>0 & x==0) disp('Dato valido! , Ingreso Exitoso!'); Programa que valida si el ingreso es un número, caso contrario muestra un error! y se mantiene hasta que ingrese un número.
  • 57.
  • 58. Se suele denominar contador cuando el incremento de la variable es de uno en uno.
  • 60.
  • 61. Variable cuyo valor se incrementa o decrementa en un valor fijo (en cada iteración de un bucle).
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72. Genere una matriz de tamaño n con números aleatorios desde 0 a n^2.
  • 73.
  • 74.
  • 75. Direccionamiento de vectores y matrices a partir de vectores Los elementos de una matriz a pueden direccionarse a partir de los elementos de vectores: Supongamos que tenemos el vector A=[2, 5, 4, 6, 1] y queremos obtener los 3 últimos valores que lo conforman. La solución sería: A(3:5) donde 3:5 es un rango de indices(posiciones) del vector. Ejemplo:
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82. Se las define entre comillas simples o dobles.
  • 86.
  • 87.
  • 88. Conversión a mayúsculas y minúsculas. Se define una variable numero=2 Se lo convierte a caracter con int2str o double2str. Se compara carácter y '2'con strcmp. Resultado indicando que los argumentos '2' y caracter son iguales. Se define una variable cad='Kokoa' y se la transforma a mayúscula. Se define una variable cad='KOKOA' y se la transforma a minúscula.
  • 89. Funciones function variable_retornada = nombre_funcion ( lista_argumentos ) cuerpo_de_función end Las funciones y scripts son el mecanismo que ofrece Octave para simplificar la escritura de programas o la carga de datos iniciales. Se pueden escribir directamente en la línea de comandos de Octave , o en archivos externos . En ese caso los scripts y las funciones se invocan exactamente igual que cualquier otra función predefinida de Octave. La única condición es que esos archivos se encuentren en un directorio dentro del path(ruta) de Octave. Formato de una función: function [var1,var2,vector,matriz] = nombre_funcion ( lista_argumentos ) cuerpo_de_función end Se pueden retornar mas de una variable e inclusive un vector o matriz de la siguiente manera:
  • 90.
  • 91. Función que retorna una matriz M de tamaño tam llena de algún carácter. function M = DibujaCuadrado (caracter,tam) for i=1:tam for j=1:tam M(i,j)=caracter; end end end Recibe como argumentos una variable llamada caracter y tam , luego de hacer operaciones con estas variables, se retorna una matriz M.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98. Estos datos se llaman miembros (members) o campos (fields).
  • 99. Una estructura es un nuevo tipo de dato, del que luego se pueden crear muchas variables.
  • 100.
  • 101.
  • 102.
  • 103. hospital=struct(' nombre ',' ',' dir ',' ',' nempleado ',0,' tratamiento ',' '); Nota: Al crear las estructuras por lo general, los campos númericos se los inicializan en 0 y los campos de tipo caracter se inicializan con ' ' .
  • 104.
  • 105. disp('LISTADO DE VEHICULOS'); fprintf('PlacaColorMarcaModeloAño'); for i=1:n placa=vehiculo(i).placa; color=vehiculo(i).color; marca=vehiculo(i).marca; modelo=vehiculo(i).modelo; anio=vehiculo(i).anio; fprintf('%s%s%s%s%d',placa,color,marca,modelo,anio); end Se almacena los valores de los campos en la posición del índice (i). Muestra los datos formateados Salida por pantalla
  • 106.
  • 107. Se usan dos comandos básicos save y load .
  • 108. Save: crea un archivo y guarda valores de variables en el mismo.
  • 109. save 'nombre_archivo' variables
  • 110. Load: carga datos de un archivo.
  • 111. load 'nombre_archivo' variables
  • 112.
  • 113.
  • 115. empleado(i) .edad=input('Ingrese edad: '); empleado(i) .salario=input('Ingrese salario: '); end save ' datosEmpleados ' empleado ; %guarda los datos de la estructura en el archivo
  • 116.
  • 117. El programa registra los datos después del último registro. Al crear el archivo este tiene un registro en “blanco”, si el usuario desea ingresar 5 registros por primera vez el programa registrará los 5 registros a partir de la siguiente linea del archivo y si luego desea ingresar 3 más el programa empezará a registrar después de los 5 registros es decir desde la 7ma línea. 1er registro “ blanco” 6to registro k=length(empleado)+1 k k+3-1 datosEmpleado
  • 118.