Cod sursa(job #1757311)

Utilizator alex.cojocaruAlex Cojocaru alex.cojocaru Data 14 septembrie 2016 20:33:17
Problema Cifra Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <stdio.h>

int s ;

FILE *fin, *fout ;

int citire () {

  char last_cf, cf ;

  fscanf (fin, "%c", &cf ) ;
  while (cf != '\n' ) {
    last_cf = cf ;
    fscanf (fin, "%c", &cf ) ;
  }
  return (int) (last_cf - '0' ) ;

}

int main() {


  fin = fopen ("cifra.in", "r" ) ;
  fout = fopen ("cifra.out", "w" ) ;

  int n, i, elem ;

  fscanf (fin, "%d\n", &n ) ; /// Citim numarul de elemente

  for (i = 0 ; i < n ; i++ ) {

    elem = citire() ;

    switch (elem % 4 ) { /// Oricare ar fi ultima cifra ele se repeta cel putin din 4 in 4

      case 0 : { s +=  ( elem * elem * elem * elem ) % 10 ; break ; }
      case 1 : { s += elem % 10 ; break ; }
      case 2 : { s += ( elem * elem ) % 10 ; break ;}
      case 3 : { s += ( elem * elem * elem ) % 10 ; break ; }

    }

    fprintf (fout, "%d\n", s % 10 ) ; /// Afisam suma actuala

  }

  fclose (fin)  ;
  fclose (fout) ;

  return 0;
}