• Viernes 15 de Noviembre de 2024, 05:28

Autor Tema:  problema con dos errores  (Leído 1834 veces)

bralbamo

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
problema con dos errores
« en: Lunes 13 de Mayo de 2013, 01:32 »
0
Estoy haciendo un programa que resuelva ecuaciones por eliminacion gaussina pero hay dos errores que no me dejan compilar y no logro arreglarlos. Estos son:
declaración static de ‘muestra’ después de una declaración que no es static
declaración static de ‘proceso’ después de una declaración que no es static

AQUI EL CODIGO

#include <stdio.h>
#include <math.h>


int main()
{
void muestra(int Dim, float Sist[][102]);
int A[3][3] = {{1,-2,3}, {4,5,0},{-7,8,9}};
int B[3] = {0,-1,2};
int Dim=3;
void proceso(int Dim, float Sist[][102]);

Printf("\n");
printf("\n\t\t\t        ***     G A U S S    ***    ");
printf("\n\n ||RESUELVE MATRICES POR EL METODO DE GAUSS||");


int main(void)
{
    int C,Dimension;
    float Sistema[101][102];
    printf("\n\n\nLa Matriz ingresada es: \n\n");
    muestra(Dimension,Sistema);
    proceso(Dimension,Sistema);
    printf("\n\n\nRespuesta(s):\n");
    for(C=1;C<=Dimension;C++) printf("\n X%d=%f\n",C,Sistema[C][Dimension+1]);
   
    scanf("");
    return(0);
}

void muestra(int Dim, float Sist[][102])

{

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re:problema con dos errores
« Respuesta #1 en: Lunes 13 de Mayo de 2013, 03:31 »
0
Hola al parecer no publicaste todo el codigo, esta incompleto asi que tengo dudas de los errrores.

Aunque no esta completo, veo 2 errores basicos

1. Colocas los prototipos de funcion dentro de otra funcion, en este caso dentro de la funcion main(), eso no es correcto, deben quedar siempre al inicio y fuera de las funciones

2.- Colocas una funcion dentro de otra en este caso un main() dentro de otro main(), eso tampco es permitido, como tampoco esta permitido tener dos funciones llamadas igual, en este caso tienes dos funciones main()

Dejo las correcciones, a reserva de que publiques el codigo completo:

Código: [Seleccionar]
#include <stdio.h>
#include <math.h>

// Los prototipos de funciones debe quedar al inicio y fuera de las funciones
void muestra(int Dim, float Sist[][102]);
void proceso(int Dim, float Sist[][102]);


int main()
{
    //void muestra(int Dim, float Sist[][102]);
    int A[3][3] = {{1,-2,3}, {4,5,0},{-7,8,9}};
    int B[3] = {0,-1,2};
    int Dim=3;
    //void proceso(int Dim, float Sist[][102]);

    printf("\n");
    printf("\n\t\t\t        ***     G A U S S    ***    ");
    printf("\n\n ||RESUELVE MATRICES POR EL METODO DE GAUSS||");


    // No puedes anidar funciones dentro de funciones
    //int main(void)
    //{
    int C,Dimension;
    float Sistema[101][102];
    printf("\n\n\nLa Matriz ingresada es: \n\n");
    muestra(Dimension,Sistema);
    proceso(Dimension,Sistema);
    printf("\n\n\nRespuesta(s):\n");
    for(C=1;C<=Dimension;C++) printf("\n X%d=%f\n",C,Sistema[C][Dimension+1]);

    scanf("");
    return(0);
}

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================