Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Heap OverLap en C++

Estas en el tema de Heap OverLap en C++ en el foro de C/C++ en Foros del Web. Saludos, Tengo que hacer un programa para la U que me calcule N notas y las guarde en un arreglo y saque el promedio usando ...
  #1 (permalink)  
Antiguo 04/03/2012, 07:53
 
Fecha de Ingreso: marzo-2012
Mensajes: 2
Antigüedad: 12 años, 2 meses
Puntos: 0
Heap OverLap en C++

Saludos,

Tengo que hacer un programa para la U que me calcule N notas y las guarde en un arreglo y saque el promedio usando memoria dinamica. Hize este codigo para poder agregar las notas a el arreglo y todo funciona bien, pero cuando intento salir me da un error y dice que la variable original de las notas esta corrupta.

Código:
#include <iostream>

using namespace std;

int menu();
void ingreso(int *i, int *notas , int *n, int *p , int *q);

int main(){
	int opcion , *i , contador = 0, contador_tot=0, *p , *q , contador_impr=0;
	i = &contador ;
	p =  &contador_tot ;
	q = &contador_impr ;
	int notas[10];
	int *n;
	n = new int;
	while( (opcion =menu()) != 3 ){
		switch(opcion){
		case 1: 
			ingreso(i , notas , n, p, q);
			break;
		case 2:
			if( *p > 10){
			for(int x=0 ;  x <  *q ; x++){
				cout << n[x] << " " ;
			}
			for(int x=0 ;  x <  *i ; x++){
				cout << notas[x] << " " ;
			}
			}
			else if( *p <= 10) {
				for(int x=0 ;  x <  *i ; x++){
				cout << notas[x] << " " ;
			}
			break;
		default:
			break;
		}
		}
	}
	return 0;
}
int menu(){
	int opcion=0;
	cout << " Seleccione una opcion: " << endl << "1.-Ingresar Notas " << endl << "2.-Imprimir notas y promedio " << endl << "3.- Salir" << endl;
	cin >> opcion;
	return opcion;
}

void ingreso(int *i, int *notas , int *n, int *p , int *q){
	if( *i >= 10 ){
		for(int a=0; a < 11 ; a++){
			n[a+(*q)] = notas[a];
		}
		for(int a=0; a < 11 ; a++){
			notas[a] = 0;
		}
		*i=0 ;
		(*q)+=10 ;
	}
	cout << "Ingresa la nota:" ;
	//cin >> notas[(*i)];
	notas[(*i)] = (*p);
	(*p)++;
	(*i)++;
	if(*p == 100){
		
	}
	cout << endl;

}
Gracias de antemano

Etiquetas: funcion, programa, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:16.