Facebook
From Insensitive Tortoise, 7 Years ago, written in C++.
Embed
Download Paste or View Raw
Hits: 266
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <cstdio>
  4. #include <cctype>
  5. #include <fstream>
  6. #include <algorithm>
  7. #include <string>
  8. #include <cmath>
  9.  
  10. using namespace std;
  11.  
  12. float suma(float tab[], int n){
  13.     int i;
  14.     float s=0;
  15.     for(i=0;i<n;i++)                           
  16.         s=s+tab[i];
  17.    
  18.     return s;
  19. }
  20.  
  21. float iloczyn(float tab[], int n){
  22.     int i;
  23.     float a=1;
  24.     for(i=0;i<n;i++)                                   
  25.         a=a*tab[i];
  26.    
  27.     return a;
  28. }
  29.  
  30. void liniowe(float tab[], int n){
  31.         int i;
  32.         for(i=1; i<n; i++){
  33.                 int j=i;
  34.                 int tem=tab[j];
  35.                 while((j>0) && (tab[j-1]>tem)){
  36.                         tab[j]=tab[j-1];
  37.                         j--;
  38.                 }
  39.                 tab[j]=tem;
  40.         }
  41. }
  42.  
  43. void mediana(float tab[], int n){
  44.     if(n%2!=0)
  45.         cout<<"Mediana: "<<tab[(n-1)/2]<<endl;
  46.    
  47.     else
  48.         cout<<"Mediana: "<<(0.5*(tab[(n-2)/2]+tab[n/2]))<<endl;
  49. }
  50.  
  51. void arytmetyczna(float suma, int n){
  52.     cout<<"Srednia arytmetyczna: "<<suma/n<<endl;
  53. }
  54.  
  55. void geo(float a,int n){
  56.     cout<<"Srednia geometryczna: "<<powf(a,(1.0/n))<<endl;
  57. }
  58.  
  59. int main(){
  60.     ifstream we("lab10p3.txt"),we2;
  61.     string liczby1;
  62.     int ileliczb=0;
  63.  
  64.     while(!we.eof()){
  65.         we >> liczby1;
  66.         ileliczb++;
  67.     }
  68.     float liczby[ileliczb]={0};
  69.     we2.open("lab10p3.txt");
  70.  
  71.     if(we2.is_open()){
  72.         string a;
  73.         for(int i=0;i<ileliczb;i++){
  74.             we2 >> a;
  75.             liczby[i]=atoi(a.c_str());
  76.         }
  77.            
  78.         liniowe(liczby, ileliczb);
  79.         cout<<"Suma: "<<suma(liczby,ileliczb)<<endl;
  80.                 cout<<"Iloczyn: "<<iloczyn(liczby,ileliczb)<<endl;
  81.         arytmetyczna(suma(liczby,ileliczb),ileliczb);
  82.         geo(iloczyn(liczby,ileliczb),ileliczb);
  83.         mediana(liczby,ileliczb);
  84.     }
  85.     we2.close();
  86.     we.close();
  87.     return 0;
  88. }
  89.