A Greve para ou Continua? Dessa vez resolvi esse exercício em C e C++.
Plataforma: URI (BEECROWD)
Problema: 2982
Linguagens: C e C++
Solução:
Nesse exercício bastava acumular o valor do saldo, que poderia ser incrementado ou decrementado, com base no valor c lido. Depois disso era necessário analisar se o saldo final era menor que zero ou não, informando uma mensagem diferente para cada caso.
Código em C:
Embora o código seja simples, muitos me perguntam sobre as chaves como delimitadores de escopo. No caso das estruturas condicionais utilizadas, elas poderiam, sim, utilizar as chaves como delimitadores. Ocorre que, na excepcionalidade de o bloco (seja de seleção ou repetição) ter apenas uma instrução, as chaves podem ser suprimidas. Por isso há blocos aqui sem chaves. Se para você fica melhor com chaves, acrescente-as! O código também estará correto.
#include <stdio.h> int main() { int n, c, saldo = 0; char t; scanf("%d", &n); while (n--) { scanf(" %c %d", &t, &c); if (t == 'V') saldo += c; else saldo -= c; } if (saldo < 0) printf("NAO VAI TER CORTE, VAI TER LUTA!\n"); else printf("A greve vai parar.\n"); return 0; }
#include <iostream> using namespace std; int main() { int n, c, saldo = 0; char t; cin >> n; while (n--) { cin >> t >> c; saldo += (t == 'V'? c : -c); } if (saldo < 0) cout << "NAO VAI TER CORTE, VAI TER LUTA!" << endl; else cout << "A greve vai parar." << endl; return 0; }
Nenhum comentário:
Postar um comentário