sábado, 19 de noviembre de 2016

Ejercicios Punteros

1) Realizar un programa que permita ingresar 10 nombres en un array string (vector pero sin #include vector).
Llenar ese vector utilizando un puntero.
Mostrar cada nombe con la posición de memoria de donde está almacenado, todo usando punteros.

2) Realizar un programa que me permita llenar una matriz de 3x3 con números aleatorios.
La matriz debe llenarse utilizando punteros y luego deben mostrarse los valores utilizando punteros.

3) Crear una lista en memoria utilizando nodos.
Cada nodo contiene una estructura alumno con Nombre, Apellido, DNI y Nota Final.
Recorrer la lista y eliminar los valores deseados ingresando DNI por teclado.
Los alumnos eliminados se guardan en un archivo Archivados. Txt



sábado, 22 de octubre de 2016

Ejercicios estructuras

1) Realizar un programa en donde se puedan ingresar en un array (vector del tipo Producto a[10] )
Cada producto contiene Artículo, Descripción, Precio, Stock, y un booleano que representa si hay para pedir mas o no en proveedor).
Ingresar hasta 10 productos y buscar la información del producto deseado.
Búsqueda por artículo.

2) Realizar un programa que me permita guardar en un archivo .txt los datos de 5 alumnos.
Cada alumno consiste de Nombre, Apellido, DNI, nota final, booleano de aprobado o no.
Desde Menú permitir ingresar nuevo alumno o leer alumno del archivo

sábado, 1 de octubre de 2016

Ejercicio Matemático Curioso

Matemático curioso 

Descripción del problema 


Observe la siguiente secuencia: 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
Cada número de la misma se ha obtenido como la mitad del anterior si éste era par o el triple más uno si era impar. 

Por ejemplo, el 34 es par, luego le sigue el 17 que es su mitad; el 5 es impar, luego le sigue su triple 15 aumentado en 1 o sea 16. El número que encabeza la secuencia lo denominamos semilla de la misma, en este caso el 22. Hay un matemático que quiere estudiarla y pide tu ayuda. Existe la conjetura de que estas secuencias, cualquiera sea la semilla llegará a 1. A pesar de la simplicidad de la regla de formación no ha sido demostrada, pero sí ensayada para gran cantidad de números de modo tal que para las semillas que ensayará el matemático lo puedes dar por cierto: la secuencia termina con un uno, ya que después repite valores.

Al matemático le interesa averiguar en cada ensayo para una semilla dada,
a) ¿Cuan larga es la secuencia? 
b) ¿Cuál es el número más grande que contiene? 

Para contestar estas preguntas deberás escribir un programa
Se recibe por teclado la semilla S de la secuencia a estudiar ( 1 ≤ S < 10.000 ) 
Nota. El largo de la secuencia nunca superará los 5.000 elementos. 

Se deben mostrar: 
Una línea con el largo de la secuencia. 
Una línea con el mayor número que hayas encontrado en la secuencia. 

Ejemplo: Si la semilla fuera 22 la salida sería: 
16
52

lunes, 10 de noviembre de 2014

Parcial modelo (2º parcial)

ANTES QUE NADA RECORDARLES QUE DEBEN ENTREGAR SI O SI EL TRABAJO PRACTICO COMPLETO PARA PODER ACCEDER A RENDIR EL 2º PARCIAL

EL TP COMPLETO CONSTA DE:

  • Ejercicios obligatorios de la guia en PSEInt
  • Ejercicios obligatorios de la guía en C++
  • Ejercicios obligatorios de la practica del blog que se fueron dando para los temas nuevos.
CUMPLIENDO CON ESO, SE PUEDE ACCEDER AL 2º PARCIAL, DE NO TENER ESTO COMPLETO, SIN EXCEPCIONES, NO SE PODRA RENDIR EL EXAMEN.


PARCIAL MODELO

Estos ejercicios pueden ser distintos en el parcial, el parcial es "modelo" porque contiene ejercicios que abarcan todos los temas vistos en clase.



Ejercicio 1: realizar un programa en donde cuando se ejecuta el programa preguntar si desea leer los alumnos actuales.
Si se selecciona Si, leer el archivo y mostrar los alumnos que estaban grabados.
Si seleccion No, preguntar si desea crear un archivo con alumnos nuevos. Si desea crear un archivo con alumnos nuevos:

 Tiene que estar definida la estructura alumnos. Dentro debe contener las variables, Nombre, Apellido, DNI y Nº de legajo.
Crear un array con 10 elementos de esa estructura, y ordenarlos por Apellido, de A-Z.
Una vez ordenado, guardar todos los alumnos en un archivo llamado "Alumnos.txt".

Ejercicio 2: realizar un programa que me permita llenar una matriz de 4x4 con números aleatorios.
La matriz debe llenarse utilizando punteros y luego deben mostrarse los valores utilizando punteros.
Calcular y mostrar la suma de la diagonal mayor menos el valor del centro.

Ejercicio 3: Ingresar números en una cola, mostrando y eliminando todos los pares cada vez que se ingrese un impar, hasta que ingrese cero.

Ejercicio 4: Ingresar números de documento e importe a depositar usando nodos, en una pila que se mantendrá
ordenada a media que ingresan los datos de mayor a menor importe de forma que en la cabeza este el
mayor. Cada vez que la pila llegue a 10 nodos se muestran y eliminan los 5 primeros, hasta que se
ingrese cero.





domingo, 2 de noviembre de 2014

Ejercicios OBLIGATORIOS para sábado 8/11

1) Realizar un programa en c+ que nos permita ingresar 10 apelidos que representan pacientes, en una cola, esperando a ser atendidas. UTILIZAR CLASE QUEUE
Las personas que la inicial de su apelido, esté entre la A y G inclusive, serán atendidas en el momento, siendo eliminadas de la cola. Mostrar apelidos de atendidos, a medida que sean eliminados de la cola.
Las personas que la inicial de su apelido NO esté entre la A y la G, serán derivadas. Las personas derivadas deben ser almacenadas en una variable vector y mostradas al final del programa.

El programa entonces deberá mostrar la lista de personas atendidas en el momento y las personas derivadas.

- Al no haber función para convertir mayúsculas y minúsculas, nos limitaremos a  ingresar apelidos en mayúsculas O minúscula, según lo decidan a la hora de hacer el programa.



2) Realizar un programa que simule la cola a un recital. Fuera del recinto se encuentran 10 personas listas para entrar. USAR CLASES QUEUE Y STACK.
La gente comienza a entrar, pero las personas en las posiciones múltiplos de 8, casualmente no pasan la revisión, por tener objetos peligrosos, por lo tanto son eliminados de la cola y se les prohíbe el ingreso, aun teniendo la entrada.
A las personas en posiciones múltiplos de 20, se les hace reintegro instantáneo del 20% de la entrada, la cual vale $30. Siguiendo la lógica, las personas que primero entran, se encontrarán más cerca del escenario, por lo tanto serán las últimas en salir del recinto, y las personas más alejadas del, escenario, serán las primeras en salir del recinto.
Utilzar una pila y una cola. El programa deberá mostrar las personas a medida que van entrando (cola), en indicar si esa persona entró o no, algo así como

Nicolás – ingresó – Pagó X Pesos.
Mario – ingresó. – Pagó X Pesos
Ezequiel - no ingresó, objeto peligroso.
Julio – ingresó – Pagó X Pesos (por eintegro).

Etc.

Luego, mostrar las personas en el orden que van saliendo

Calcular y mostrar el total recaudado. Escribir en un archivo lamado Prohibidos.txt, en la raíz de la carpeta del proyecto, con los nombres de las personas que no entraron al recinto por poser objetos peligrosos.


3) Realizar un programa en C++, que utilizando clase list, nos permita crear una lista. Ingresar 10 nombres y eliminar de la lista, los nombres que empiezan con letra vocal  (A, E, I, O, U).
Mostrar la lista inicial cargada y la lista final modificada.

domingo, 26 de octubre de 2014

Ejercicios de los temas nuevos

1) Realizar un programa que me permita ingresar 10 valores enteros en una pila. Recorrer la pila y elemento a elemento como se vió en clase y decir si el elemento es par o impar.

2) Realizar un programa que tenga una pila de tipo string con 5 nombres. Escribir un nombre y buscarlo en la pila. Si está, preguntar si desea reemplazarlo por uno nuevo. Si se ingresa "si", se ingresa un nuevo nombre y se reemplaza ese nombre en la pila, con el nuevo nombre ingresado.

lunes, 20 de octubre de 2014

Ejercicios punteros - OBLIGATORIOS 25/10


1) Realizar un programa que permita ingresar 10 nombres en un array string (vector pero sin #include vector).
Llenar ese vector utilizando un puntero.
Mostrar cada nombe con la posición de memoria de donde está almacenado, todo usando punteros.

2) Realizar un programa que me permita llenar una matriz de 3x3 con números aleatorios.
La matriz debe llenarse utilizando punteros y luego deben mostrarse los valores utilizando punteros.


OBLIGATORIOS PARA SABADO 25/10
EN NINGUNO DE LOS EJERCICIOS DEBE MENCIONARSE A LAS VARIABLES DE VECTOR O MATRIZ DENTRO DEL PROGRAMA, NI PARA LLENAR NI PARA MOSTRAR. TODO DEBE RESOLVERSE CON PUNTEROS.


LOS QUE ENVIEN ESTOS 2 EJERCICIOS + LOS EJERCICIOS QUE DI LA VEZ PASADA QUE TAMBIEN SON PARA EL 25/10, BIEN RESUELTOS, RECIBIRÁN UN + (POSITIVO) COMO NOTA CONCEPTUAL.