Fortran - Problema:centro numerico

   
Vista:

Problema:centro numerico

Publicado por Clara (1 intervención) el 11/11/2007 19:06:52
Necesito ayuda con este programa...

Escribir un programa que calcule los centros numéricos entre 1 y n. Un centro numérico es un número que separa una lista de números enteros(comenzando en 1) en dos grupos de números, cuyas sumas son iguales.

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Fortran
- Código fuente de Fortran
- Cursos de Fortran
- Temas de Fortran
información
Códigos de Fortran
- Ecuaciones lineales

RE:Problema:centro numerico

Publicado por SALVADOR (1 intervención) el 18/01/2008 08:20:43
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include<stdio.h>
#include<conio.h>
void main()
{
int n= 0;
int i= 0, j= 0;
int x= 0, y= 0, z= 0;
clrscr();
printf("valor del tama¤o de la lista: ");
scanf("%d", &n);
printf("%5s%5s
","y","z");
   if(x % 2 == 0) x = n / 2;
   else x = (n + 1) / 2;
for(i = 1;i <= n;i++)
 {
   for(j = 1;j <= n;j++)
   {
      if(j < x) y += j;
	if(j > x) z += j;
   }
   if(z != 0)
   {
 
   if (y == z) printf("%d es un numero centrico:y= %d, z= %d ", x, y, z);
   y = z = 0;
   x++;
   }
 }
getch();
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema:centro numerico

Publicado por Joab (1 intervención) el 16/04/2008 18:49:50
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
//no funciona aca te lo doy con algunas modificaciones
 
#include<iostream.h>
#include<conio.h>
using namespace std;
int n= 0; int a=0;
int i= 0, j= 0;
int x= 0, y= 0, z= 0;
 
int main()
{
cout<<"valor del tama¤o de la lista:
";
cin>>a;
for (int n=1; n<=a; n++)
{
    if(n % 2 == 0)
    {
    x = n / 2;
    }
    else
    {
    x = (n + 1) / 2;
    }
    for(i = 1;i <= n;i++)
          {
          for(j = 1;j <= n;j++)
                {
                      if(j < x)
                      y += j;
                      if(j > x)
                      z += j;
                }
          if(z != 0)
             {
                  if (y == z)
                  {
                  cout<<"es un numero centrico:  "<<x<<endl;
                  cout<<"suma lista anterior:   "<<y<<endl;
                  cout<<"suma lista posterior:  "<<z<<endl;
                  system("pause");
                  }
                  y  = z = 0;
                  x++;
 
             }
       }
 
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema:centro numerico

Publicado por James (1 intervención) el 22/09/2009 05:35:56
Aqui te lo dejo hecho en C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
#include <conio.h>
 
void main()
{
	int x,acu1,acu2;
   cout<<"\n\n\t\t\tCENTRO NUMERICO";
   cout<<"\n\nEl programa calcula los centros numericos entre 1 y n";
   cout<<"\n\n\nIngrese el maximo de la lista de enteros (n) : ";
   cin>>x;
   for(int i=1;i<=x;i++)
   {
   	acu1=acu2=0;
      for(int j=1;j<=i;j++) acu1+=j;
      for(int j=x;j>=i+2;j--) acu2+=j;
      if(acu1==acu2)
      {cout<<"\n\nEl centro numerico es: "<<(i+1); break;}
      if(acu1>acu2 || i==x-1 || x==1)
      {cout<<"\n\nNo existe centro numerico con la cifra dada"; break;}
   }
   getch();
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema:centro numerico

Publicado por Ricardo (1 intervención) el 02/05/2012 18:09:12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//centro numerico
 
#include<fstream.h>
#include<conio.h>
 
void main()
{ int sum1,sum2,num,n,k;
k=1;
num=1;
	while( k<=1)
	{
	sum2=0;
	n=num;
	sum1=n*(n-1)/2;
		while(sum2<=sum1)
		 {n++;
		  sum2=sum2+n;
		 }
	 if(sum2==sum1)
	 {cout<<num<<"\t es centro numerico\n";
	  k++;
	 }
 
	  num++;
 
	}
getch();
 
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar