Introducción a las TI
Comandos a revisar
-Renice
-Sleep
-Jobs
-Fg
-Bg
Actividad Evaluada
- Para estos 5 comandos explicar:
-Funcionalidad del comando
-Sintaxis
-Ejemplo práctico
Además, relacionar con el uso del comando kill, ps y top.
1.- Renice
Funcionalidad del comando:
Altera la prioridad de los procesos en ejecución.
Sintaxis:
renice pri [-p pid] [-g pgrp] [-u user]
las opciones son:
* -p pid cambia la prioridad para el proceso especificado
* -g pgrp cambia la prioridad para los procesos ejecutados por los
usuarios que pertenecen al grupo con ID=pgrp
* -u user cambia la prioridad para los procesos del usuario
especificado
Ejemplo:
$ abiword &
[1] 7681
$ renice 10 -p 7681
7681: old priority 0, new priority 10
$ renice 3 -u tomas
503: old priority 0, new priority 3
2.- Sleep
Funcionalidad del comando:
Deja dormida la consola durante el tiempo que se define.
Comandos UBUNTU
s = Segundos
m = Minutos
h = Horas
Sintaxis:
sleep(tiempo que se dormirá la máquina + (s/m o h según se quiera)
Ejemplos:
sleep 5s
Deja dormida la consola durante 5 segundos.
sleep 30s 5m
Deja dormida la consola durante 30 segundos + 5 minutos.
3.- Jobs
Funcionalidad del comando:
El comando jobs se utiliza para listar procesos que estés ejecutando
en segundo plano o en primer plano. Si la respuesta se devuelve sin
información es que no hay procesos presentes.
Sintaxis:
jobs [opciones]
las opciones son:
-l
Informa del identificador del grupo de proceso y la carpeta de
trabajo de las operaciones.
-n
Muestra sólo los trabajos que se han detenido o cerrado desde
la última notificación.
-p
Muestra sólo el identificador de proceso para los líderes de
grupo de procesos de los trabajos seleccionados.
Ejemplo:
1.jobs -l
Muestra los trabajos que estás ejecutando en primer plano (o) en
segundo plano.
2.jobs -p
Muestra sólo el identificador de proceso para los trabajos listados.
4.- Fg
Funcionalidad del comando:
El comando fg se utiliza para situar un proceso en primer plano.
Sintaxis:
fg [especifica proceso]
Comandos UBUNTU
Ejemplo:
Para mover un proceso a primer plano:
Iniciemos tres procesos y suspendamos esos procesos en
segundo plano.
kmail- inicia el cliente de correo.
Presiona ctrl+z para detener el proceso actual.
xmms- reproductor de música.
Presiona ctrl+z para detener el proceso actual.
sleep 120- un proceso de prueba.
Presiona ctrl+z para detener el proceso actual.
jobs
El comando anterior mostrará los procesos en la shell.
[1] Detenido
[2]- Detenido
[3]+ Detenido
fg 1
El comando anterior ejecutará la aplicación kmail en primer
plano.
5.- Bg
Funcionalidad del comando:
El comando bg se utiliza para mover un trabajo a segundo plano. El
usuario puede ejecutar un proceso en segundo plano añadiendo un
símbolo "&" al final del comando.
Sintaxis:
bg [opciones] [proceso]
las opciones son:
-l
Informa del identificador del grupo de proceso y la carpeta de
trabajo de las operaciones.
-p
Informa únicamente del identificador del grupo de proceso de
las operaciones.
Comandos UBUNTU
-x
Sustituye cualquier job_id encontrado en el comando o
argumentos con el identificador de grupo de proceso correspondiente,
después ejecuta el comando dándole argumentos.
job Especifíca el proceso que quiere ejecutarse en segundo plano.
Ejemplo:
Para Ejecutar un proceso en segundo plano
kmail- inicia el cliente de correo.
Presiona ctrl+z para detener el proceso actual.
Ahora sólo escribe bg para mover el último proceso detenido a
segundo plano.
Relaciones entre comandos
Kill: El comando kill se usa para detener procesos en segundo plano.
Ps: El comando ps se usa para informar del estado del proceso. ps es
la abreviatura de Process Status.
Top: El comando TOP muestra a tiempo real un listado de los
procesos que se están ejecutando en el sistema, especificando
además el % de Cpu y Memoria que están utilizando, sus IDs,
usuarios que lo están ejecutando, etc.
La relación que tienen estos 3 comandos, con los 5 analizados
anteriormente es que todos son compatibles entre ellos. Todos están
asociados a la administración o control de procesos, para así, dar
mayor comodidad o rendimiento al usuario, según él estime
conveniente.
Integrantes Grupo:
Alamiro Solis .
Ninoska Ulloa.
Washington Arevalos
Camilo Rivas
Mis Competencias
viernes, 9 de diciembre de 2011
jueves, 8 de diciembre de 2011
Informe Grupal Programación de Robots
Informe Grupal: Proyecto #2
Integrantes y cargos:
Camilo Rivas: Productor Multimedia.
Washinton Arevalos: Staff de Apoyo.
Ninoska Ulloa: Jefe de Grupo.
Alamiro Solis: Secretario.
Introducción:
En esta actividad la responsabilidad se nos dió a nosotros para crear lo que nosotros queramos con nuestro robot. Esta actividad puede ser junto a otro grupo o individual, en esta ocasión como grupo decidimos trabajar solos. Para ello nuestro robot simulara un autobús donde recolectara pasajeros en distintos paraderos, de tal manera que al completarse de pasajeros solo se dirija a destino y no recolecte más pasajeros, para ello nuestro robot debe cumplir con lo siguiente que se nos ha pedido: Manejar las estructuras de datos Arreglos (Arrays) y Archivos, y manejo de tareas concurrentes.
Además en esta actividad ocuparemos el sensor de sonidos, ultrasonido, luz y tacto, el cual cada uno de ellos cumplirá una función determinada por nosotros para que nuestro robot funcione a la perfección y cumpla con lo que son pide y nosotros mismo nos hemos propuesto realizar.
Estrategia de solución:
Durante la primera semana de trabajo, en esta actividad procedimos de la siguiente manera. Como en todas las actividades anteriores el staff de apoyo se preocupó de retirar los kits de trabajo de los estantes y ubicarlos en una mesa de trabajo. Posteriormente, revisó la bateria y la puso a cargar.El staff de apoyo y productor multimedia se encargan de dar la estructura adecuada al robot para que se desenvuelva de la mejor manera posible en su misión. Se acuerda un modelo simple, con sensores de ultrasonido, sonido, tacto y luz. El sensor de ultrasonidos nos ayudará a detectar vehículos en la carretera, los cuales esquivará o reducirá la velocidad para no chocarlos. Se llevará el conteo de cada paradero y de las personas que se subirán en cada uno de ellos. Lo que hará el sensor de tacto es dar instrucción de detenerse al bus en caso de choque. El sensor de sonido, al realizar un ruido, simulará la cantidad de pasajeros que subirán en cada paradero.
Respecto a la programación, el secretario y jefe de grupo comienzan a realizar el programa, surgen algunas complicaciones pero finalmente son solucionadas. Luego el staff de apoyo y productor multimedia se suman al equipo de programación para reforzar algunas debilidades que pudieran tener los otros integrantes.
Por motivos de tiempo, no pudimos avanzar más, el staff de apoyo devuelve los kits al estante.
Durante la segunda semana de trabajo, el staff de apoyo procede de la misma forma que la semana anterior. Se termina el programa y se realizan las pruebas. Se ven las deficiencias que tiene el programa, se hacen correcciones hasta que el robot genera el resultado esperado.
Finalmente el productor multimedia graba el video, edita y sube el video a la red.
Diagrama de Flujo:
Conclusión
Luego de realizar esta actividad y de trabajar en equipo, llegamos a la conclusión de que trabajando ordenadamente y combinando nuestros conocimientos logramos plantear la actividad que realizaría el robot, esta sería simular ser un autobús que recolectaría pasajeros en distintos paraderos, para lograrlo aplicamos los conocimientos previos y nuevas ideas. Al realizar el código
Utilizamos el sensor de sonido el cual nos ayudó a detectar los diferentes vehículos en la carretera, el sensor de sonido, que cumpliría la función de que al momento de realizar un ruido simulara la cantidad de pasajeros que subirán en cada paradero siendo estos guardados en un contador que nos entregaría la cantidad total de pasajeros recolectados. y todas estas tareas estarían realizándose combinadamente a través de la utilización de tareas un array, guardando los textos en archivos.
Integrantes y cargos:
Camilo Rivas: Productor Multimedia.
Washinton Arevalos: Staff de Apoyo.
Ninoska Ulloa: Jefe de Grupo.
Alamiro Solis: Secretario.
Introducción:
En esta actividad la responsabilidad se nos dió a nosotros para crear lo que nosotros queramos con nuestro robot. Esta actividad puede ser junto a otro grupo o individual, en esta ocasión como grupo decidimos trabajar solos. Para ello nuestro robot simulara un autobús donde recolectara pasajeros en distintos paraderos, de tal manera que al completarse de pasajeros solo se dirija a destino y no recolecte más pasajeros, para ello nuestro robot debe cumplir con lo siguiente que se nos ha pedido: Manejar las estructuras de datos Arreglos (Arrays) y Archivos, y manejo de tareas concurrentes.
Además en esta actividad ocuparemos el sensor de sonidos, ultrasonido, luz y tacto, el cual cada uno de ellos cumplirá una función determinada por nosotros para que nuestro robot funcione a la perfección y cumpla con lo que son pide y nosotros mismo nos hemos propuesto realizar.
Estrategia de solución:
Durante la primera semana de trabajo, en esta actividad procedimos de la siguiente manera. Como en todas las actividades anteriores el staff de apoyo se preocupó de retirar los kits de trabajo de los estantes y ubicarlos en una mesa de trabajo. Posteriormente, revisó la bateria y la puso a cargar.El staff de apoyo y productor multimedia se encargan de dar la estructura adecuada al robot para que se desenvuelva de la mejor manera posible en su misión. Se acuerda un modelo simple, con sensores de ultrasonido, sonido, tacto y luz. El sensor de ultrasonidos nos ayudará a detectar vehículos en la carretera, los cuales esquivará o reducirá la velocidad para no chocarlos. Se llevará el conteo de cada paradero y de las personas que se subirán en cada uno de ellos. Lo que hará el sensor de tacto es dar instrucción de detenerse al bus en caso de choque. El sensor de sonido, al realizar un ruido, simulará la cantidad de pasajeros que subirán en cada paradero.
Respecto a la programación, el secretario y jefe de grupo comienzan a realizar el programa, surgen algunas complicaciones pero finalmente son solucionadas. Luego el staff de apoyo y productor multimedia se suman al equipo de programación para reforzar algunas debilidades que pudieran tener los otros integrantes.
Por motivos de tiempo, no pudimos avanzar más, el staff de apoyo devuelve los kits al estante.
Durante la segunda semana de trabajo, el staff de apoyo procede de la misma forma que la semana anterior. Se termina el programa y se realizan las pruebas. Se ven las deficiencias que tiene el programa, se hacen correcciones hasta que el robot genera el resultado esperado.
Finalmente el productor multimedia graba el video, edita y sube el video a la red.
Diagrama de Flujo:
Código con la solución alcanzada:
Autoevaluación:
Integrante / cargo
|
Descripción
|
Nota
|
Ninoska Ulloa (jefe grupo)
|
Organiza de manera eficiente al grupo de trabajo
y ayuda en lo que falta o trae problemas.
|
6.4
|
Camilo Rivas (productor multimedia)
|
Cumple con lo que se le encarga y colabora con lo
que se pide en la actividad.
|
6.4
|
Alamiro Solis(secretario)
|
Toma apuntes de la actividad a realizar de buena
manera y ayuda en otras cosas que se le pide.
|
6.4
|
Washington Arevalos (staff de apoyo)
|
Apoya y colabora con todos los integrantes del
grupo, siendo eficiente en lo que se le pide.
|
6.4
|
Luego de realizar esta actividad y de trabajar en equipo, llegamos a la conclusión de que trabajando ordenadamente y combinando nuestros conocimientos logramos plantear la actividad que realizaría el robot, esta sería simular ser un autobús que recolectaría pasajeros en distintos paraderos, para lograrlo aplicamos los conocimientos previos y nuevas ideas. Al realizar el código
Utilizamos el sensor de sonido el cual nos ayudó a detectar los diferentes vehículos en la carretera, el sensor de sonido, que cumpliría la función de que al momento de realizar un ruido simulara la cantidad de pasajeros que subirán en cada paradero siendo estos guardados en un contador que nos entregaría la cantidad total de pasajeros recolectados. y todas estas tareas estarían realizándose combinadamente a través de la utilización de tareas un array, guardando los textos en archivos.
lunes, 14 de noviembre de 2011
Programacion 2: "Cadenas de caracteres en Java"
Cadenas de caracteres en Java
2010
Analice el problema y construya un programa que permita reemplazar la primera palabra por una
palabra dada por teclado.
Ejemplo: abc Federico abc comarca abc ->P -> león Federico león comarca león
1- Análisis de variables de entradas/salidas.
Variables de entrada:
Variable X de tipo String, es la palabra nueva que se entrega por teclado.
Variables de salida:
Variable R de tipo String, que devuelve la palabra modificada.
2- Un ejemplo especifico.
Identificar los jugadores de un equipo de fútbol, dándoles a ello una identificación especial para
que sea más fácil identificarlos entre personas que no conocen de ellos.
3- Proceso generalización.
• Primeramente ingresamos la cadena
• Solicitamos una palabra ingresada por teclado.
• Se guardara la palabra ingresada en nuestra variable.
• Reemplazamos la palabra que se repetía en nuestra frase, por nuestra variable.
• Cadena=cadena.replace ("abc"," "+X);
• Imprimimos en pantalla la nueva frase que se formo.
4- Pseudocódigo.
Inicio
Frase
String cadena =”ingresar palabra”;
Inicio
Cadena=cadena.replace ("abc",""+n) // reemplazamos cadena
Imprimir (cadena)
Fin
5- Diagrama de flujo.
Ejercicio 3:
Analice un problema y construya un programa que permita transformar todas las primeras letras
de las palabras de una frase en mayúsculas.
Ejemplo: corazón de león Rodolfo el reno -> P -> Corazón De León Rodolfo El Reno.
1-Análisis de variables de entradas/salidas.
Variables de entrada:
Variable R de tipo String, será lo que contenga la cadena de “n” caracteres.
Variables de salida:
Variable P de tipo String, indicara la cadena de “n” caracteres, pero solamente mostrará
las primeras letras de cada palabra en mayúsculas.
2-Un ejemplo especifico.
Se puede ocupar para que en un colegio donde los alumnos integrantes de un curso, en una clase
de lenguaje, puedan colocar las primeras palabras con mayúsculas, ya sea en un listado de
nombres de otras personas que se encuentran en minúsculas, así ellos puedan identificar y
cambiar rápidamente.
3-Proceso generalización.
• Solicitamos una frase ingresada por teclado.
• Se guardara la frase ingresada en nuestra variable.
• Agregamos una condición
• Cambiamos las primeras letras a mayúsculas de las palabras en la frase
• Imprimimos en pantalla la nueva frase que se formo.
4-Pseudocódigo.
inicio de clase
inicio del main
Se crean variables "FRASE" y "NUEVA" de tipo string, se le asignan valores null y " "
respectivamente
Se crean variable "I" de tipo entero, iniciada en 0
2010
Introducción al tema:
Dentro del área de la programación existen lo que los programadores llaman: variables
primitivas, dentro de las cuales se encuentran datos tales como : int (números enteros), float
(números de coma flotante), double (números de coma flotante de mayor capacidad de
almacenamiento), boolean (afirmación de valor verdadero o falso), char (carácter unicode), y al que nos interesa, String (cadena de caracteres unicodes, o más bien cadena de char).
Según lo planteado dentro del programa de actividades del curso: “Programación 2”, en la
presente semana se presenta la actividad de realizar la resolución de problemas manipulando
cadenas de caracteres, siendo estas vistas con anterioridad en las clases de cátedra del mismo curso, la idea de la presentación del siguiente documento, es entregar las respuestas solicitadas , y dar a entender la explicación del desarrollo de los tres problemas en cuestión.
Problemas: cadenas sección 2
Equipo E, F.
Ejercicio 1:
Invertir una cadena ingresada por teclado.
Ejemplo: juliocesar -> P ->rasecoiluj
1-Análisis de variables de entradas/salidas.
Variables de entrada:
Variable X de tipo String, será lo que contenga la cadena de “n” caracteres.
Variables de salida:
Variable Z de tipo String, indicara la cadena de “n” caracteres, pero de forma inversa.
2-Un ejemplo especifico.
Se puede utilizar para formar sopa de letras, ya que se pueden formar palabras, dejándolas al
revés para tener una mayor dificultad en el juego.
3-Proceso generalización.
En el proceso ingresaremos una variable X de tipo String que puede tener “N” caracteres, cuyo
código nos debe permitir ingresar una cadena de caracteres.
• Ingresamos la cadena por teclado de tipo String
• La guardamos en la variable X
• For (int i=0; i<cadena.length(); i++){
• posicion--;
• Damos vuelta la cadena
• imprimimos en pantalla
4-Pseudocódigo.
Inicio
String cad =”ingresar palabra”;
Desde i=0 hasta cad.length() hacer
Inicio
Invertir posición
Imprimir (cad.charAt(posición))
fin
5-Diagrama de flujo.
Dentro del área de la programación existen lo que los programadores llaman: variables
primitivas, dentro de las cuales se encuentran datos tales como : int (números enteros), float
(números de coma flotante), double (números de coma flotante de mayor capacidad de
almacenamiento), boolean (afirmación de valor verdadero o falso), char (carácter unicode), y al que nos interesa, String (cadena de caracteres unicodes, o más bien cadena de char).
Según lo planteado dentro del programa de actividades del curso: “Programación 2”, en la
presente semana se presenta la actividad de realizar la resolución de problemas manipulando
cadenas de caracteres, siendo estas vistas con anterioridad en las clases de cátedra del mismo curso, la idea de la presentación del siguiente documento, es entregar las respuestas solicitadas , y dar a entender la explicación del desarrollo de los tres problemas en cuestión.
Problemas: cadenas sección 2
Equipo E, F.
Ejercicio 1:
Invertir una cadena ingresada por teclado.
Ejemplo: juliocesar -> P ->rasecoiluj
1-Análisis de variables de entradas/salidas.
Variables de entrada:
Variable X de tipo String, será lo que contenga la cadena de “n” caracteres.
Variables de salida:
Variable Z de tipo String, indicara la cadena de “n” caracteres, pero de forma inversa.
2-Un ejemplo especifico.
Se puede utilizar para formar sopa de letras, ya que se pueden formar palabras, dejándolas al
revés para tener una mayor dificultad en el juego.
3-Proceso generalización.
En el proceso ingresaremos una variable X de tipo String que puede tener “N” caracteres, cuyo
código nos debe permitir ingresar una cadena de caracteres.
• Ingresamos la cadena por teclado de tipo String
• La guardamos en la variable X
• For (int i=0; i<cadena.length(); i++){
• posicion--;
• Damos vuelta la cadena
• imprimimos en pantalla
4-Pseudocódigo.
Inicio
String cad =”ingresar palabra”;
Desde i=0 hasta cad.length() hacer
Inicio
Invertir posición
Imprimir (cad.charAt(posición))
fin
5-Diagrama de flujo.
Ejercicio 2:
Analice el problema y construya un programa que permita reemplazar la primera palabra por una
palabra dada por teclado.
Ejemplo: abc Federico abc comarca abc ->P -> león Federico león comarca león
1- Análisis de variables de entradas/salidas.
Variables de entrada:
Variable X de tipo String, es la palabra nueva que se entrega por teclado.
Variables de salida:
Variable R de tipo String, que devuelve la palabra modificada.
2- Un ejemplo especifico.
Identificar los jugadores de un equipo de fútbol, dándoles a ello una identificación especial para
que sea más fácil identificarlos entre personas que no conocen de ellos.
3- Proceso generalización.
• Primeramente ingresamos la cadena
• Solicitamos una palabra ingresada por teclado.
• Se guardara la palabra ingresada en nuestra variable.
• Reemplazamos la palabra que se repetía en nuestra frase, por nuestra variable.
• Cadena=cadena.replace ("abc"," "+X);
• Imprimimos en pantalla la nueva frase que se formo.
4- Pseudocódigo.
Inicio
Frase
String cadena =”ingresar palabra”;
Inicio
Cadena=cadena.replace ("abc",""+n) // reemplazamos cadena
Imprimir (cadena)
Fin
5- Diagrama de flujo.
Ejercicio 3:
Analice un problema y construya un programa que permita transformar todas las primeras letras
de las palabras de una frase en mayúsculas.
Ejemplo: corazón de león Rodolfo el reno -> P -> Corazón De León Rodolfo El Reno.
1-Análisis de variables de entradas/salidas.
Variables de entrada:
Variable R de tipo String, será lo que contenga la cadena de “n” caracteres.
Variables de salida:
Variable P de tipo String, indicara la cadena de “n” caracteres, pero solamente mostrará
las primeras letras de cada palabra en mayúsculas.
2-Un ejemplo especifico.
Se puede ocupar para que en un colegio donde los alumnos integrantes de un curso, en una clase
de lenguaje, puedan colocar las primeras palabras con mayúsculas, ya sea en un listado de
nombres de otras personas que se encuentran en minúsculas, así ellos puedan identificar y
cambiar rápidamente.
3-Proceso generalización.
• Solicitamos una frase ingresada por teclado.
• Se guardara la frase ingresada en nuestra variable.
• Agregamos una condición
• Cambiamos las primeras letras a mayúsculas de las palabras en la frase
• Imprimimos en pantalla la nueva frase que se formo.
4-Pseudocódigo.
inicio de clase
inicio del main
Se crean variables "FRASE" y "NUEVA" de tipo string, se le asignan valores null y " "
respectivamente
Se crean variable "I" de tipo entero, iniciada en 0
se inicia liza el escaner
se pide ingresar una frase
"FRASE" = texto ingresado
MIENTRAS "I" < largo de "FRASE" hacer:
MIENTRAS "I" < largo de frase y a la vez el caracter DE "FRASE"en posición de “I” es igual a " "
"FRASE" = texto ingresado
MIENTRAS "I" < largo de "FRASE" hacer:
MIENTRAS "I" < largo de frase y a la vez el caracter DE "FRASE"en posición de “I” es igual a " "
hacer:se le asigna a nueva su valor más trozo de frase entre las posiciones dadas por I e I+1
se aumenta “I” en uno
//fin de MIENTRAS
SI i es menor que largo de frase hacer:
se le asigna a nueva su valor más bus trozo de frase entre las posiciones dadas por i e i más uno y
se pasa a mayúscula
se aumenta i en uno
//fin de SI
MIENTRAS "I" < largo de frase y a la vez el carácter de "FRASE"en posición de “I” es igual a " "
hacer:
se le asiga a nueva su valor más trozo de frase entre las posiciones dadas por I e I+1
se aumenta i en uno
//fin de MIENTRAS
//fin de MIENTRAS
imprimir: "La nueva frase es" + nueva
//fin del main
fin de clase
//fin de MIENTRAS
SI i es menor que largo de frase hacer:
se le asigna a nueva su valor más bus trozo de frase entre las posiciones dadas por i e i más uno y
se pasa a mayúscula
se aumenta i en uno
//fin de SI
MIENTRAS "I" < largo de frase y a la vez el carácter de "FRASE"en posición de “I” es igual a " "
hacer:
se le asiga a nueva su valor más trozo de frase entre las posiciones dadas por I e I+1
se aumenta i en uno
//fin de MIENTRAS
//fin de MIENTRAS
imprimir: "La nueva frase es" + nueva
//fin del main
fin de clase
Programacion 2: "Informe de Vectores"
Matrices + programación
6. Pseudocódigo.
Algoritmo de compara dos arreglos.
Variables
Arreglo A, entero, positivo, contiene 1-n dígitos.
Arreglo B, entero, positivo, contiene 1-n dígitos.
Int c, entero igual a 0;
inicio
Mientras que i <0 y i <A.length hacer lo siguiente.
Mientras que J <0 y J <B.length hacer lo siguiente.
IF ( A[] ==B[])
C++;
Imprimir cantidad de números que se repiten.
Fin.
6. Pseudocódigo.
· Algoritmo de ingresar un arreglo con 6 objeto.
· Variables
· Arreglo, entero, positivo, contiene 6 objetos.
· AUX, entero positiva, variable auxiliar.
· Inicio
· Mientras que i <0 y i <6 hacer lo siguiente.
· Mientras que J <0 y J <6-1 hacer lo siguiente.
· IF ( A[j] >A[J+1])
· A[j+1]=AUX;
· Mientras que i=0 y i < 6 hacer lo siguiente
· Imprimir resultado en pantalla.
· Fin.
Problema 1
1. Enunciado.
Dados dos vectores de largo n y m ya llenos (contienen elementos) entregue cuantos elementos están en ambos arreglos. Construir el programa con métodos crear vector, llenar vector, contar, imprimir vector.
Ejemplo:
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif)
[1 2 3 4 5 6] p 3
[1 3 5 7 9]
2. Análisis de variable de entrada y salida.
· Variable de entrada :
Variable array Arreglo1 de tipo entero, contendrá los siguetees objetos: 1 - 2 - 3 - 4 - 5 - 6
Variable array Arreglo2 de tipo entero, contendrá los siguetees objetos: 1 - 3 - 5 - 7 - 9
Variable C de tipo entero, contador que obtendrá primeramente valor cero.
1. Enunciado.
Dados dos vectores de largo n y m ya llenos (contienen elementos) entregue cuantos elementos están en ambos arreglos. Construir el programa con métodos crear vector, llenar vector, contar, imprimir vector.
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif)
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif)
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif)
[1 3 5 7 9]
2. Análisis de variable de entrada y salida.
· Variable de entrada :
Variable array Arreglo1 de tipo entero, contendrá los siguetees objetos: 1 - 2 - 3 - 4 - 5 - 6
Variable array Arreglo2 de tipo entero, contendrá los siguetees objetos: 1 - 3 - 5 - 7 - 9
Variable C de tipo entero, contador que obtendrá primeramente valor cero.
· Variable de Salida:
Variable C de tipo entero, mostrara la cantidad de números que se repiten.
Variable C de tipo entero, mostrara la cantidad de números que se repiten.
3. Un ejemplo especifico.
Se tiene un curso de 60 alumno en la cual se necesita saber la cantidad de números verificador de su credencial de identificación (RUT) se repiten para poder separarlo en un nuevo curso de manera que los dos curso queden equitativo.
4. Proceso de generalización.
En el proceso nos vamos a referir a dos vectores de un conjunto de números ya determinado que están separados en dos arreglos Arreglo1 y Arreglo2 los cuales van a ser separados para luego comparar uno a uno para saber la cantidad de números tienes en común los dos arreglos mostrar por pantalla el total de números que se repiten.
· Ingresamos los arreglos A y B más el contador C.
· Con un for recorremos el primer arreglo y lo mostramos en pantalla.
· Hacemos lo mismo para el segundo arreglo.
· Aplicamos dos ciclos for para recorrer los dos arreglos.
· Realizamos la comparación de ambos arreglos a través de un (if).
· Sumamos con nuestro contador C.
· Imprimimos nuestro contador en pantalla.
Se tiene un curso de 60 alumno en la cual se necesita saber la cantidad de números verificador de su credencial de identificación (RUT) se repiten para poder separarlo en un nuevo curso de manera que los dos curso queden equitativo.
4. Proceso de generalización.
En el proceso nos vamos a referir a dos vectores de un conjunto de números ya determinado que están separados en dos arreglos Arreglo1 y Arreglo2 los cuales van a ser separados para luego comparar uno a uno para saber la cantidad de números tienes en común los dos arreglos mostrar por pantalla el total de números que se repiten.
· Ingresamos los arreglos A y B más el contador C.
· Con un for recorremos el primer arreglo y lo mostramos en pantalla.
· Hacemos lo mismo para el segundo arreglo.
· Aplicamos dos ciclos for para recorrer los dos arreglos.
· Realizamos la comparación de ambos arreglos a través de un (if).
· Sumamos con nuestro contador C.
· Imprimimos nuestro contador en pantalla.
5. Diagrama de flujo.
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image003.gif)
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image025.gif)
Algoritmo de compara dos arreglos.
Variables
Arreglo A, entero, positivo, contiene 1-n dígitos.
Arreglo B, entero, positivo, contiene 1-n dígitos.
Int c, entero igual a 0;
inicio
Mientras que i <0 y i <A.length hacer lo siguiente.
Mientras que J <0 y J <B.length hacer lo siguiente.
IF ( A[] ==B[])
C++;
Imprimir cantidad de números que se repiten.
Fin.
Problema 2
1. Enunciado.
Elabore un programa computacional para ordenar un arreglo por burbuja de menor a mayor. Elabore los métodos Crear vectores, llenar vectores, intercambiar vectores. Imprimir vectores. Para las longitudes de vectores debe ser finita de largo 6 como efecto de prueba.
Ejemplo:
[5, 65, 70, 69, 2, 0] [0, 2, 5, 65, 69, 70]
2. Análisis de variable de entrada y salida.
· Variable de entrada.
Variable tipo arreglo, entero arreglo1 en cual contiene 6 objeto donde ya está ingresado.
Variable aux de tipo entero, que se ocupa de manera auxiliar para poder intercambiar los valores del arreglo1.
· Variable de salida.
Variable de tipo arreglo, entro arreglo1 en el cual imprime los números ya ordenados de menor a mayor.
3. Un ejemplo especifico.
Se quiere separar un grupo 60 estudiantes en dos grupos, Para la cual se decidió separarlo a través de su día de nacimiento, si por algún motivo se repite el día de nacimiento de alguno pasa al ínstate al otro curso.
4. Proceso de generalización.
En el proceso ingresamos un arreglo de tipo arreglo el cual obtiene 6 objetos ingresados.
· Una vez agregada el arreglo, aplicamos un for para comprobar que el arreglo es correcto.
1. Enunciado.
Elabore un programa computacional para ordenar un arreglo por burbuja de menor a mayor. Elabore los métodos Crear vectores, llenar vectores, intercambiar vectores. Imprimir vectores. Para las longitudes de vectores debe ser finita de largo 6 como efecto de prueba.
Ejemplo:
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image027.gif)
2. Análisis de variable de entrada y salida.
· Variable de entrada.
Variable tipo arreglo, entero arreglo1 en cual contiene 6 objeto donde ya está ingresado.
Variable aux de tipo entero, que se ocupa de manera auxiliar para poder intercambiar los valores del arreglo1.
· Variable de salida.
Variable de tipo arreglo, entro arreglo1 en el cual imprime los números ya ordenados de menor a mayor.
3. Un ejemplo especifico.
Se quiere separar un grupo 60 estudiantes en dos grupos, Para la cual se decidió separarlo a través de su día de nacimiento, si por algún motivo se repite el día de nacimiento de alguno pasa al ínstate al otro curso.
4. Proceso de generalización.
En el proceso ingresamos un arreglo de tipo arreglo el cual obtiene 6 objetos ingresados.
· Una vez agregada el arreglo, aplicamos un for para comprobar que el arreglo es correcto.
· Declaramos la variable auxiliar.
· Aplicamos dos ciclos for para recorrer las filas y columnas.
· Agregamos la condición (if)
· Utilizamos la variable auxiliar para intercambiar los valores de las columnas del arreglo.
· Recorremos el arreglo con un ciclo for.
· Imprimimos el arreglo en pantalla.
5. Diagrama de flujo.
· Aplicamos dos ciclos for para recorrer las filas y columnas.
· Agregamos la condición (if)
· Utilizamos la variable auxiliar para intercambiar los valores de las columnas del arreglo.
· Recorremos el arreglo con un ciclo for.
· Imprimimos el arreglo en pantalla.
5. Diagrama de flujo.
![](file:///C:/Users/Alastor/AppData/Local/Temp/msohtmlclip1/01/clip_image029.jpg)
· Algoritmo de ingresar un arreglo con 6 objeto.
· Variables
· Arreglo, entero, positivo, contiene 6 objetos.
· AUX, entero positiva, variable auxiliar.
· Inicio
· Mientras que i <0 y i <6 hacer lo siguiente.
· Mientras que J <0 y J <6-1 hacer lo siguiente.
· IF ( A[j] >A[J+1])
· A[j+1]=AUX;
· Mientras que i=0 y i < 6 hacer lo siguiente
· Imprimir resultado en pantalla.
· Fin.
Programacion 1: Laboratorio orientado a objetos
Ejercicio Propuesto.
Problema:
class Notas{
private double nota1;
private double nota2;
private double nota3;
private double nota4;
Notas(){
nota1=0.0; nota2=0.0; nota3=0.0; nota4=0.0;
}
Notas(double nota1, double nota2, double nota3, double nota4)
{
this.nota1=nota1;
this.nota2=nota2;
this.nota3=nota3;
this.nota4=nota4;
}
Crear la clase Notas
- Constructor que inicialice 4 notas
- Constructor que tenga como parámetros las notas.
- Métodos para modificar las notas (setNota1, setNota2….) estático
- Métodos para obtener las notas (getNota1, getNota2….)
- Método para Calcular el promedio de notas estático
- Método para Calcular la nota mayor estático.
Crear una clase Principal que use la clase Notas y que haga:
- Métodos para modificar las notas (setNota1, setNota2….) estático
- Métodos para obtener las notas (getNota1, getNota2….)
- Método para Calcular el promedio de notas estático
- Método para Calcular la nota mayor estático.
Crear una clase Principal que use la clase Notas y que haga:
Clase Principal
- Crear 4 objetos de tipo Notas con notas ingresadas por teclado.
- Obtenga el promedio de notas del objeto1 y del objeto2
- Imprima las notas de ambos objetos e imprima el promedio mayor entre ambos objetos.
- Imprima las notas del objeto3 y su nota más alta, lo mismo para el objeto4.
- Modifique las notas de los objetos 3 y 4, muestre por pantalla.
- Imprima las notas de ambos objetos y la nota más alta entre ambos objetos.
1. El proyecto sólo tiene estas dos clases: la clase Notas y la clase Principal
2. Comprima la carpeta de su proyecto (el nombre de este archivo debe ser su nombre)
3. Suba su archivo comprimido a la plataforma educa en el ítem tareas
Reglas:
1. El archivo debe estar grabado con su Nombre completo.
2. Esta actividad es PRESENCIAL, es decir, debe estar en uno de los laboratorios de la escuela.
3. El archivo debe estar en la plataforma Educa sección Tareas, usted tiene plazo hasta fin de la sesión de laboratorio.
4. Es su responsabilidad verificar que su archivo esté en la plataforma antes de cerrado el proceso.
Tipo de entrega : individual subido en sección Tareas de Educa.
Fecha límite : sesión de laboratorio.
- Obtenga el promedio de notas del objeto1 y del objeto2
- Imprima las notas de ambos objetos e imprima el promedio mayor entre ambos objetos.
- Imprima las notas del objeto3 y su nota más alta, lo mismo para el objeto4.
- Modifique las notas de los objetos 3 y 4, muestre por pantalla.
- Imprima las notas de ambos objetos y la nota más alta entre ambos objetos.
1. El proyecto sólo tiene estas dos clases: la clase Notas y la clase Principal
2. Comprima la carpeta de su proyecto (el nombre de este archivo debe ser su nombre)
3. Suba su archivo comprimido a la plataforma educa en el ítem tareas
Reglas:
1. El archivo debe estar grabado con su Nombre completo.
2. Esta actividad es PRESENCIAL, es decir, debe estar en uno de los laboratorios de la escuela.
3. El archivo debe estar en la plataforma Educa sección Tareas, usted tiene plazo hasta fin de la sesión de laboratorio.
4. Es su responsabilidad verificar que su archivo esté en la plataforma antes de cerrado el proceso.
Tipo de entrega : individual subido en sección Tareas de Educa.
Fecha límite : sesión de laboratorio.
Desarrollo Solución del Código:
Clase Principal
import java.util.*;
public class Claseprincipal{
static void main(){
Scanner leer= new Scanner(System.in);
Notas A1, A2, A3, A4;
double a,b,c,d;
import java.util.*;
public class Claseprincipal{
static void main(){
Scanner leer= new Scanner(System.in);
Notas A1, A2, A3, A4;
double a,b,c,d;
System.out.println( "ingrese 4 notas para A1 " );
a= leer.nextDouble();
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A1= new Notas(a,b,c,d);
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A1= new Notas(a,b,c,d);
System.out.println( "ingrese 4 notas para A2 " );
a= leer.nextDouble();
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
a= leer.nextDouble();
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A2= new Notas(a,b,c,d);
System.out.println( "ingrese 4 notas para A3 " );
a= leer.nextDouble();
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A3= new Notas(a,b,c,d);
System.out.println( "ingrese 4 notas para A4 " );
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A3= new Notas(a,b,c,d);
System.out.println( "ingrese 4 notas para A4 " );
a= leer.nextDouble();
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A4= new Notas(a,b,c,d);
b= leer.nextDouble();
c= leer.nextDouble();
d= leer.nextDouble();
A4= new Notas(a,b,c,d);
System.out.println();
System.out.println();
System.out.println();
double prom =Notas.CalcularPromedio(A1);
System.out.println( "El promedio de A1 es " + prom);
System.out.println();
double prom2= Notas.CalcularPromedio(A2);
System.out.println( "El promedio de A2 es " + prom2);
System.out.println();
System.out.println( "El promedio de A1 es " + prom);
System.out.println();
double prom2= Notas.CalcularPromedio(A2);
System.out.println( "El promedio de A2 es " + prom2);
System.out.println();
System.out.println(" la Nota del objeto A1" );
System.out.println(A1.getNota1( ));
System.out.println(A1.getNota2( ));
System.out.println(A1.getNota3( ));
System.out.println(A1.getNota4( ));
System.out.println();
System.out.println(" la Nota del objeto A2" );
System.out.println(A2.getNota1( ));
System.out.println(A2.getNota2( ));
System.out.println(A2.getNota3( ));
System.out.println(A2.getNota4( ));
System.out.println();
System.out.println(A1.getNota1( ));
System.out.println(A1.getNota2( ));
System.out.println(A1.getNota3( ));
System.out.println(A1.getNota4( ));
System.out.println();
System.out.println(" la Nota del objeto A2" );
System.out.println(A2.getNota1( ));
System.out.println(A2.getNota2( ));
System.out.println(A2.getNota3( ));
System.out.println(A2.getNota4( ));
System.out.println();
if ( Notas.CalcularPromedio(A1) > Notas.CalcularPromedio(A2))
System.out.println("el promedio mayor es " + prom);
else
System.out.println("el promedio mayor es " + prom2);
double mayor= Notas.NotaMayor(A3);
System.out.println("el promedio mayor es " + prom);
else
System.out.println("el promedio mayor es " + prom2);
double mayor= Notas.NotaMayor(A3);
double mayor2=Notas.NotaMayor(A4);
System.out.println(A3.getNota1( ));
System.out.println(A3.getNota2( ));
System.out.println(A3.getNota3( ));
System.out.println(A3.getNota4( ));
System.out.println("La nota mayor es "+ mayor);
System.out.println();
System.out.println(A3.getNota1( ));
System.out.println(A3.getNota2( ));
System.out.println(A3.getNota3( ));
System.out.println(A3.getNota4( ));
System.out.println("La nota mayor es "+ mayor);
System.out.println();
System.out.println(" Las Nota del objeto A4");
System.out.println(A4.getNota1( ));
System.out.println(A4.getNota2( ));
System.out.println(A4.getNota3( ));
System.out.println(A4.getNota4( ));
System.out.println("La nota mayor es "+ mayor2);
System.out.println();
Notas.setNota1(A3,6);
Notas.setNota2(A3,5);
Notas.setNota3(A3,4);
Notas.setNota4(A3,7);
Notas.setNota1(A4,6);
Notas.setNota2(A4,5);
Notas.setNota3(A4,4);
Notas.setNota4(A4,7);
}
}
Clase Notas:
System.out.println(A4.getNota2( ));
System.out.println(A4.getNota3( ));
System.out.println(A4.getNota4( ));
System.out.println("La nota mayor es "+ mayor2);
System.out.println();
Notas.setNota1(A3,6);
Notas.setNota2(A3,5);
Notas.setNota3(A3,4);
Notas.setNota4(A3,7);
Notas.setNota1(A4,6);
Notas.setNota2(A4,5);
Notas.setNota3(A4,4);
Notas.setNota4(A4,7);
}
}
Clase Notas:
class Notas{
private double nota1;
private double nota2;
private double nota3;
private double nota4;
Notas(){
nota1=0.0; nota2=0.0; nota3=0.0; nota4=0.0;
}
Notas(double nota1, double nota2, double nota3, double nota4)
{
this.nota1=nota1;
this.nota2=nota2;
this.nota3=nota3;
this.nota4=nota4;
}
static void setNota1(Notas n1, double nota1){
n1.nota1=nota1;}
static void setNota2(Notas n2, double nota1){
n1.nota1=nota1;}
static void setNota2(Notas n2, double nota1){
n2.nota1=nota1;}
static void setNota3(Notas n3, double nota1){
n3.nota1=nota1;}
static void setNota4(Notas n4, double nota1){
n4.nota1=nota1;}
n3.nota1=nota1;}
static void setNota4(Notas n4, double nota1){
n4.nota1=nota1;}
double getNota1()
{return nota1;}
double getNota2()
{return nota1;}
double getNota2()
{return nota2;}
double getNota3()
{return nota3;}
double getNota4()
double getNota3()
{return nota3;}
double getNota4()
{return nota4;}
static double CalcularPromedio(Notas obj){
return ((obj.getNota1()+ obj.getNota2()+ obj.getNota3()+ obj.getNota4())/4);
}
static double NotaMayor(Notas obj2){
double max1=1,max2=1;
if(obj2.getNota1()>obj2.getNota2())
max1=obj2.getNota1();
else
max1=obj2.getNota2();
if(obj2.getNota3()>obj2.getNota4())
max2=obj2.getNota3();
else
max2=obj2.getNota4();
if(max1>max2)
return max1;
else
return max2;
}
}
static double CalcularPromedio(Notas obj){
return ((obj.getNota1()+ obj.getNota2()+ obj.getNota3()+ obj.getNota4())/4);
}
static double NotaMayor(Notas obj2){
double max1=1,max2=1;
if(obj2.getNota1()>obj2.getNota2())
max1=obj2.getNota1();
else
max1=obj2.getNota2();
if(obj2.getNota3()>obj2.getNota4())
max2=obj2.getNota3();
else
max2=obj2.getNota4();
if(max1>max2)
return max1;
else
return max2;
}
}
Suscribirse a:
Entradas (Atom)