fellipeh

Untitled

Sep 29th, 2020
825
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. struct Produto {
  6.     int codigo;
  7.     float preco;
  8. };
  9.  
  10. void listar(int q, Produto *p) {
  11.     for(int i = 0; i < q; i++) {
  12.         std::cout << (*(p + i)).codigo << " - R$ " << (*(p + i)).preco << std::endl;
  13.     }
  14. }
  15.  
  16. int main() {
  17.     int quantidade = 10;
  18.     Produto produtos[quantidade];
  19.     int opcao = 0;
  20.     float porcentagem = 0;
  21.     bool controle = true;
  22.    
  23.     for(int i = 0; i < quantidade; i++){
  24.         std::cout << "Informe o codigo do produto (" << i + 1 << ") " << std::endl;
  25.         std::cin >> (*(produtos + i)).codigo;
  26.         std::cout << "Informe o preco do produto (" << i + 1 << ") " << std::endl;
  27.         std::cin >> (*(produtos + i)).preco;
  28.     }
  29.    
  30.     while (controle) {
  31.         std::cout << "1 - Aumentar valores" << std::endl;
  32.         std::cout << "2 - Listar produtos" << std::endl;
  33.         std::cout << "3 - Sair" << std::endl;
  34.         std::cin >> opcao;
  35.        
  36.         switch (opcao){
  37.             case 1:
  38.             while (porcentagem <= 0){
  39.                 std::cout << "Escolha em porcentagem a quantidade do aumento: " << std::endl;
  40.                 std::cin >> porcentagem;
  41.             }
  42.            
  43.             for(int i = 0; i < quantidade; i++){
  44.                 (*(produtos + i)).preco = (*(produtos + i)).preco + ((*(produtos + i)).preco * (porcentagem / 100));
  45.             }
  46.            
  47.             break;
  48.            
  49.             case 2:
  50.             listar(quantidade, produtos);
  51.             break;
  52.            
  53.             case 3:
  54.             controle = false;
  55.             break;
  56.            
  57.             default :
  58.             std::cout << "Opcao invalida" << std::endl;
  59.             break;
  60.         }
  61.     }
  62. }
RAW Paste Data