Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
4
Добавлен:
28.06.2014
Размер:
2.88 Кб
Скачать
#include <stdio.h>
#include <conio.h>
#include <iostream.h>

const int nmax = 100;
int ArrayInput(int *n, double x[], char *fname);             // ”г­ЄжЁп ўў®¤  ¬ ббЁў  Ё§ д ©« 
int Sum(double x[], int n, float num) ; 
int min(int a1, int a2) ; // ”г­ЄжЁп Ї®ЁбЄ  б㬬л н«Ґ¬Ґ­в®ў ¬ ббЁў 

int main(int argc, char *argv[]) {
  double a[nmax], b[nmax], c[nmax];
  int sa, sb, sc;
  int na, nb, nc;
  float num, mini; 
  cout << "ЋЇаҐ¤Ґ«Ёвм, ў Є Є®¬ ¬ ббЁўҐ ¬Ґ­миҐ Є®«ЁзҐбвў® н«Ґ¬Ґ­в®ў,\nЎ®«миЁе § ¤ ­­®Ј® зЁб« \n"; 
  printf("‚ўҐ¤ЁвҐ зЁб«®\n");
  scanf("%e",&num);

  if (argc < 4) {
    printf("ЌҐ ¤®бв в®з­® Ї а ¬Ґва®ў!\n");
  } else { 
    if (ArrayInput(&na, a, argv[1]) && ArrayInput(&nb, b, argv[2]) && ArrayInput(&nc, c, argv[3])) {
      sa = Sum(a, na, num);
      sb = Sum(b, nb, num);
      sc = Sum(c, nc, num);
      mini = min(min(sa,sb), sc);
      
      cout << "\n\nќ«Ґ¬Ґ­в®ў, Ў®«миЁе § ¤ ­­®Ј® зЁб«  " << num; 
      if ((mini == sa) && (mini == sb) && (mini == sc)) { cout <<" ў® ўбҐе ¬ ббЁў е ®¤Ё­ Є®ў®,\nЁ а ў­® "<< sa; }
      else if ((mini == sa) && (mini == sb)) {cout <<" ў ¬ ббЁў е 1 Ё 2 ¬Ґ­миҐ, 祬 ў 3,\nЁ а ў­® "<< sa; }
      else if ((mini == sa) && (mini == sc)) {cout <<" ў ¬ ббЁў е 1 Ё 3 ¬Ґ­миҐ, 祬 ў 2,\nЁ а ў­® "<< sa; }
      else if ((mini == sb) && (mini == sc)) {cout <<" ў ¬ ббЁў е 2 Ё 3, ¬Ґ­миҐ зҐ¬ ў 1,\nЁ а ў­® "<< sb; }
      else if (mini == sa) {cout <<" ў ¬ ббЁўҐ 1 ¬Ґ­миҐ, 祬 ў ®бв «м­ле,\nЁ а ў­® "<< sa; }
      else if (mini == sb) {cout <<" ў ¬ бЁбўҐ 2 ¬Ґ­миҐ, 祬 ў ®бв «м­ле,\nЁ а ў­® "<< sb; }
      else if (mini == sc) {cout <<" ў ¬ ббЁўҐ 3 ¬Ґ­миҐ, 祬 ў ®бв «м­ле,\nЁ а ў­® "<< sc; }
    }
  }
  getch();
  return 1;
}

int Sum(double x[], int n, float num) {
  int i;
  int s;
	
  for (s = 0, i = 0; i < n; i++)
	  if (x[i] > num) 
	    s++;
  return s;
}

int min(int a1, int a2) {
	if (a1 < a2) return a1;
	else return a2;
}

int ArrayInput(int *n, double x[], char *fname){
  FILE* file=fopen(fname, "r");
  char tmp[256];
  if (file == NULL) {
    printf("ЋиЁЎЄ  ®вЄалвЁп д ©«  '%s'\n", fname);
    return 0;
  }

  if (fscanf(file, "%d", n) < 1) {
    printf("Џа®Ё§®и«  ®иЁЎЄ  з⥭Ёп Ё§ д ©«  '%s'\n", fname);
    return 0;
  }
  cout << "Њ ббЁў "<< fname << "\n";
  cout << "C®бв®Ёв Ё§ " << *n << " н«Ґ¬Ґ­в®ў. ‚ўҐбвЁ ¤агЈ®Ґ зЁб«®? ®в " << 0 << " ¤® " << nmax << ": ";
  cin >> tmp;
  if ((atoi(tmp) >= 0) && (atoi(tmp) < nmax)) {
    *n = atoi(tmp);
  }
  cout << "Њ ббЁў б®бв®Ёв Ё§ " << *n << " н«Ґ¬Ґ­в®ў"; 
  if (*n < 0 || *n > nmax) {
    printf("Љ®«-ў® н«-в®ў ¬ ббЁў  ¤®«¦­® Ўлвм ®в 1 ¤® %d! (д ©« '%s')\n", nmax, fname);
    return 0;
    }
  cout << "{";
  for (int i = 0; i < *n; i++)
    if (fscanf(file, "%lf", &x[i]) < 1) {
      printf("Џа®Ё§®и«  ®иЁЎЄ  з⥭Ёп Ё§ д ©«  '%s'\n", fname);
      return 0;
     } else {
       cout << " " << x[i] << "," ;
     }
    cout <<  " }\n";  
   return 1;
} 
Соседние файлы в папке Laba1