tags:

views:

197

answers:

3
  1. the program must read numeric data from a file.
  2. only one line per number
  3. half way between those numbers is a negative number.
  4. the program must sum those who are above the negative number in a acumulator an those below the negative number in another acumulator.
  5. the black screen shall print both results and determined who is grater or equal.

#include <iostream>
#include<fstream>
using namespace std; 

void showvalues(int,int,int[]);
void showvalues2(int,int);
void sumtotal(int,int);
int main() 
{
    int total1=0;
    int total2=0;

    const int SIZE_A= 9;
    int arreglo[SIZE_A];
    int suma,total,a,b,c,d,e,f;

    ifstream archivo_de_entrada;
    archivo_de_entrada.open("numeros.txt");

    //lee///
    for(int count =0 ;count < SIZE_A;count++)   
        archivo_de_entrada>>arreglo[count] ;
    archivo_de_entrada.close(); 


    showvalues(0,3,arreglo);
    showvalues2(5,8);
    sumtotal(total1,total2);

    system("pause");
    return 0;
}

void showvalues(int a,int b,int arreglos)
{
    int total1=0;

    //muestra////////////////////////
    cout<< "los num son ";
    for(int count = a ;count <= b;count++)   
        total1 += arreglos[count];
    cout <<total1<<"  ";
    cout <<endl;
}

void showvalues2(int c,int d)
{
    int total2=0;

    cout<< "los num 2 son ";
    for(count =5 ;count <=8;count++)   
        total2 = total2 + arreglo[count];
    cout <<total2<<"  ";
    cout <<endl;
}

void sumtotal(int e,int f)
{
    cout<<"la suma de t1 y t2 es  ";
    total= total1 + total2;
    cout<<total;
    cout <<endl; 
}
+2  A: 

I suggest you to learn much more programming concepts before you try to make programs. Even your syntax format is failing badly. But here is your code fixed. I hope this was not homework.

#include <iostream>
#include <fstream>
#define SIZE_A 9

using namespace std;

int showvalues(int a, int b, int arreglos[]);
int showvalues2(int c, int d);
void sumtotal(int suma);

int arreglo[SIZE_A];

int main()
{

    int suma;

    ifstream archivo_de_entrada;
    archivo_de_entrada.open("numeros.txt");

    //lee///
    for(int count = 0; count < SIZE_A; count++)   
        archivo_de_entrada>>arreglo[count] ;
    archivo_de_entrada.close(); 


    suma = showvalues(0,3, arreglo);
    suma += showvalues2(5, 8);
    sumtotal(suma);

    //system("pause");
    return 0;
}

int showvalues(int a, int b, int arreglos[])
{
    int total1 = 0;

    //muestra////////////////////////
    cout << "los num son ";
    for(int count = a; count <= b; count++)
        total1 += arreglos[count];
    cout << total1 << "  " << endl;
    return total1;
}

int showvalues2(int c, int d)
{
    int total2 = 0;

    cout<< "los num 2 son ";
    for(int count = 5; count <= 8; count++)
        total2 = total2 + arreglo[count];
    cout << total2 << "  " << endl;
    return total2;
}

void sumtotal(int suma)
{
    cout << "la suma de t1 y t2 es  ";
    cout << suma << endl;
}
Temek
+8  A: 
#include <iostream>
#include <iterator>
#include <algorithm>
#include <numeric>
#include <vector>
#include <fstream>
#include <functional>

int main() { 
    std::ifstream in("numeros.txt");
    std::vector<int> numbers(std::istream_iterator<int>(in), std::istream_iterator<int>());

   std::vector<int>::iterator partition = 
       std::find_if(numbers.begin(), numbers.end(), std::bind2nd(std::less<int>(), 0));
   int lower = std::accumulate(numbers.begin(), partition, 0);
   int upper = std::accumulate(partition+1, numbers.end(), 0);
   std::cout << "lower: " << lower << "\tupper: " << upper << "\n"
             << lower<upper ? "lower < upper" : "lower >= upper" << "\n";
   return 0;
}

Ahhh...beautiful -- more #includes than actual statements!

Jerry Coffin
+1: Great answer! :D
Alerty
A: 

thank temek you helped me alot. this is the final code and it works well

#include <iostream> 
#include <fstream> 
#define SIZE_A 9 

using namespace std; 

int showvalues(int a, int b, int arreglos[]); 
int showvalues2(int c, int d); 
void sumtotal(int suma1,int suma2); 
void summayor(int,int);

int arreglo[SIZE_A]; 

int main() 
{ 
    int total1,total2; 
    int suma1,suma2;
    ifstream archivo_de_entrada; 
    archivo_de_entrada.open("numeros.txt"); 


    for(int count = 0; count < SIZE_A; count++)    
        archivo_de_entrada>>arreglo[count] ; 
    archivo_de_entrada.close();  

    suma1 = showvalues(0,3, arreglo);
    suma2 = showvalues2(5, 8);
    summayor(suma1,suma2);
    sumtotal(suma1,suma2); 

    system("pause"); 
    return 0; 
} 

int showvalues(int a, int b, int arreglos[]) 
{ 
    int total1 = 0; 

    //muestra//////////////////////// 
    cout<<"Grupo 1 numeros arriba del negativo: "<<endl;

    cout << "La suma del grupo 1 es "; 
    for(int count = a; count <= b; count++) 
        total1 += arreglos[count]; 
    cout << total1 << "  " << endl; 
    return total1; 
} 

int showvalues2(int c, int d) 
{ 
    int total2 = 0; 

    cout<< "La suma del grupo 2 es ";
    for(int count = 5; count <= 8; count++) 
        total2 = total2 + arreglo[count]; 
    cout << total2 << "  " << endl; 
    return total2; 
} 

void sumtotal(int k,int l) 
{ 
    int sumatotal;
    cout << "La suma de los dos grupos es "; 
    sumatotal= k+l;
    cout << sumatotal << endl; 
} 

void summayor(int x,int z)
{
    if(x>z)
        cout<<"El grupo 1 es mayor "<<x<<endl;
    else if(x<z)
        cout<<"El grupo 2 es mayor "<<z<<endl;
    else
        cout<<"Los dos grupos son iguales "<<x<<" = "<<z;
    cout<<endl;
}
alexsniper