Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - MariaBlue

#1
Programación C/C++ / Ayuda con programación
27 Noviembre 2014, 01:55 AM
Alguien podría decirme como se puede hacer este codigo por medio de un solo for en C++

#include<stdio.h>
#include <stdlib.h>   
#include <time.h>


#define N 10

int Factorial(int number){
 
  int fact = 1;
  int i;
 
  if(number > 0){
    for(i = number; i > 0; i--)
      fact *= i;
  }
  else if(number == 0){
    fact = 1;
  }
  else{
    fact = 0;
  }
   return fact;
}


int main(){

  int Matrix[N+1][N+1];
  int Aux;
  srand (time(NULL));
 
 

  for(int i = 0; i < N*N; i++)
    //printf("(%d, %d)\n",i/N, i%N);
    Matrix[i/N][i%N] = rand() % 100;


  for(int i = 0; i < N*N; i++)
    {
    if(i%N == 0)
      Aux = -100000;
    if(Matrix[i/N][i%N] > Aux)
      Aux = Matrix[i/N][i%N];
    if(i%N == (N-1))
      Matrix[i/N][N] = Aux;
  }

  for(int i = 0; i < N*N; i++){
    if(i%N == 0)
      Aux = -100000;
    if(Matrix[i%N][i/N] > Aux)
      Aux = Matrix[i%N][i/N];
    if(i%N == (N-1))
      Matrix[N][i/N] = Aux;
  }
 
  Aux = -100000;
  for(int i = 0; i < N; i++){
    if(Matrix > Aux)
      Aux = Matrix;
  }
  Matrix[N][N] = Aux;

  for(int i = 0; i < (N+1)*(N+1); i++){
    if(i%(N+1) == 0)
      printf("\n");
     printf("%d ", Matrix[i/(N+1)][i%(N+1)]);
  }
   

    /*for(int i = 0; i < N+1; i++){
    printf("\n");
    for(int j = 0; j < N+1; j++)
      printf("%d ", Matrix[j]);
      }*/
  printf("\n");
 
  /*

   for(int i = 0; i < N; i++){
     Matrix[N] = Factorial(Matrix[N]);
     Matrix[N] = Factorial(Matrix[N]);
   }

   Matrix[N][N] = Factorial(Matrix[N][N]);
     


*/



  return 0;
}