Nu imi iese aceasta problema.
Gigel în timp ce așteptă să meargă la doctor se joacă cu noul lui telefon. A observat ca atunci când este pe ecranul de start și apasă pe o tastă numerică se aude o notă muzicală.
Dar lui i-a venit ideea să codeze fiecare notă muzicală în acest mod:
Nota do1 cu numărul 0
Nota re cu numărul 1
Nota mi cu numărul 2
Nota fa cu numărul 3
Nota sol cu numărul 4
Nota la cu numărul 5
Nota si cu numărul 6
Nota do2 cu numărul 7
El creează un cântec, ia notele muzicale și le codează ca mai sus, le adună, iar apoi împarte suma la 8 și restul rămas este nota maximă.
Cerință
Ajutați-l pe Gigel sa afle nota maximă!
Date de intrare
Fișierul de intrare muzical.in conține pe prima linie numărul n și pe a doua linie n note muzicale.
Date de ieșire
Fișierul de ieșire muzical.out conține pe prima linie nota maximă.
Exemplu
Intrare
8
do1 re mi fa sol la si do2
Ieșire
sol
Răspunsuri la întrebare
Răspuns de
5
#include <stdio.h>
#include <cstring>
using namespace std;
FILE *f=fopen("muzical.in","r");
FILE *g=fopen("muzical.out","w");
int n,c;
char s[4];
int main()
{
fscanf(f,"%d",&n);
for(int i=1;i<=n;i++)
{
fscanf(f,"%s ",s);
if(strcmp(s,"re")==0)
c=c+1;
if(strcmp(s,"mi")==0)
c=c+2;
if(strcmp(s,"fa")==0)
c=c+3;
if(strcmp(s,"so")==0)
c=c+4;
if(strcmp(s,"la")==0)
c=c+5;
if(strcmp(s,"si")==0)
c=c+6;
if(strcmp(s,"do2")==0)
c=c+7;
}
switch(c%8)
{
case 0: fprintf(g,"%s","do1");break;
case 1: fprintf(g,"%s","re");break;
case 2: fprintf(g,"%s","mi");break;
case 3: fprintf(g,"%s","fa");break;
case 4: fprintf(g,"%s","so");break;
case 5: fprintf(g,"%s","la");break;
case 6: fprintf(g,"%s","si");break;
case 7: fprintf(g,"%s","do2");break;
}
return 0;
}
#include <cstring>
using namespace std;
FILE *f=fopen("muzical.in","r");
FILE *g=fopen("muzical.out","w");
int n,c;
char s[4];
int main()
{
fscanf(f,"%d",&n);
for(int i=1;i<=n;i++)
{
fscanf(f,"%s ",s);
if(strcmp(s,"re")==0)
c=c+1;
if(strcmp(s,"mi")==0)
c=c+2;
if(strcmp(s,"fa")==0)
c=c+3;
if(strcmp(s,"so")==0)
c=c+4;
if(strcmp(s,"la")==0)
c=c+5;
if(strcmp(s,"si")==0)
c=c+6;
if(strcmp(s,"do2")==0)
c=c+7;
}
switch(c%8)
{
case 0: fprintf(g,"%s","do1");break;
case 1: fprintf(g,"%s","re");break;
case 2: fprintf(g,"%s","mi");break;
case 3: fprintf(g,"%s","fa");break;
case 4: fprintf(g,"%s","so");break;
case 5: fprintf(g,"%s","la");break;
case 6: fprintf(g,"%s","si");break;
case 7: fprintf(g,"%s","do2");break;
}
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
8 ani în urmă
Informatică,
9 ani în urmă
Engleza,
9 ani în urmă
Limba română,
9 ani în urmă