Advertisement
Diogo03

Básico

Nov 14th, 2024 (edited)
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.16 KB | None | 0 0
  1. #include <bits/stdc++.h> // inclui tudo da biblioteca padrao do C++ de uma vez so
  2. using namespace std; // evita de precisar escrever std:: toda hora
  3.  
  4. int main() {
  5.     // ---------- 1. Funcoes uteis para vetor (vector) ----------
  6.     vector<int> numeros = {5, 3, 8, 6, 1};
  7.  
  8.     // Adicionando elementos ao final do vetor com push_back
  9.     numeros.push_back(10); // adiciona o numero 10 ao final do vetor
  10.     cout << "Vetor apos push_back: ";
  11.     for (int n : numeros) cout << n << " ";
  12.     cout << endl;
  13.  
  14.     // Removendo o ultimo elemento com pop_back
  15.     numeros.pop_back(); // remove o ultimo elemento (10)
  16.     cout << "Vetor apos pop_back: ";
  17.     for (int n : numeros) cout << n << " ";
  18.     cout << endl;
  19.  
  20.     // Encontrando um elemento com find
  21.     auto it = find(numeros.begin(), numeros.end(), 6); // procura o valor 6 no vetor
  22.     if (it != numeros.end()) {
  23.         cout << "Elemento 6 encontrado no indice " << distance(numeros.begin(), it) << endl;
  24.     } else {
  25.         cout << "Elemento 6 nao encontrado" << endl;
  26.     }
  27.  
  28.     // Removendo um elemento especifico com erase
  29.     numeros.erase(numeros.begin() + 1); // remove o elemento no indice 1 (3)
  30.     cout << "Vetor apos erase: ";
  31.     for (int n : numeros) cout << n << " ";
  32.     cout << endl;
  33.  
  34.     // Limpando todos os elementos do vetor com clear
  35.     numeros.clear(); // remove todos os elementos do vetor
  36.     cout << "Tamanho do vetor apos clear: " << numeros.size() << endl;
  37.  
  38.  
  39.     // ---------- 2. Funcoes uteis para set ----------
  40.     set<int> conjunto = {1, 2, 3, 4, 5};
  41.  
  42.     // Inserindo um valor no set com insert
  43.     conjunto.insert(6); // adiciona o numero 6
  44.     cout << "Set apos insert: ";
  45.     for (int n : conjunto) cout << n << " ";
  46.     cout << endl;
  47.  
  48.     // Removendo um elemento especifico com erase
  49.     conjunto.erase(2); // remove o numero 2 do conjunto
  50.     cout << "Set apos erase: ";
  51.     for (int n : conjunto) cout << n << " ";
  52.     cout << endl;
  53.  
  54.     // Buscando um elemento com find
  55.     if (conjunto.find(3) != conjunto.end()) {
  56.         cout << "Elemento 3 encontrado no set" << endl;
  57.     } else {
  58.         cout << "Elemento 3 nao encontrado no set" << endl;
  59.     }
  60.  
  61.     // Verificando o tamanho do set com size
  62.     cout << "Tamanho do set: " << conjunto.size() << endl;
  63.  
  64.     // Limpando todos os elementos do set com clear
  65.     conjunto.clear();
  66.     cout << "Tamanho do set apos clear: " << conjunto.size() << endl;
  67.  
  68.  
  69.     // ---------- 3. Funcoes uteis para map ----------
  70.     map<string, int> idade;
  71.     idade["alice"] = 30;
  72.     idade["bob"] = 25;
  73.  
  74.     // Inserindo um novo par chave-valor
  75.     idade["carlos"] = 20;
  76.     cout << "Map apos insercao: ";
  77.     for (auto& par : idade) {
  78.         cout << par.first << " -> " << par.second << ", ";
  79.     }
  80.     cout << endl;
  81.  
  82.     // Encontrando um valor pela chave com find
  83.     auto itMap = idade.find("alice");
  84.     if (itMap != idade.end()) {
  85.         cout << "Idade de alice: " << itMap->second << endl;
  86.     } else {
  87.         cout << "Chave 'alice' nao encontrada no map" << endl;
  88.     }
  89.  
  90.     // Removendo um par pela chave com erase
  91.     idade.erase("bob"); // remove "bob" do map
  92.     cout << "Map apos remover 'bob': ";
  93.     for (auto& par : idade) {
  94.         cout << par.first << " -> " << par.second << ", ";
  95.     }
  96.     cout << endl;
  97.  
  98.     // Verificando o tamanho do map com size
  99.     cout << "Tamanho do map: " << idade.size() << endl;
  100.  
  101.     // Limpando todos os elementos do map com clear
  102.     idade.clear();
  103.     cout << "Tamanho do map apos clear: " << idade.size() << endl;
  104.  
  105.  
  106.     // ---------- 4. Funcoes uteis para unordered_map ----------
  107.     unordered_map<string, int> salario;
  108.     salario["alice"] = 5000;
  109.     salario["bob"] = 4000;
  110.  
  111.     // Inserindo um novo par chave-valor
  112.     salario["carlos"] = 3000;
  113.     cout << "Unordered_map apos insercao: ";
  114.     for (auto& par : salario) {
  115.         cout << par.first << " -> " << par.second << ", ";
  116.     }
  117.     cout << endl;
  118.  
  119.     // Buscando uma chave com find
  120.     auto itUnorderedMap = salario.find("bob");
  121.     if (itUnorderedMap != salario.end()) {
  122.         cout << "Salário de bob: " << itUnorderedMap->second << endl;
  123.     } else {
  124.         cout << "Chave 'bob' nao encontrada no unordered_map" << endl;
  125.     }
  126.  
  127.     // Removendo um par pela chave com erase
  128.     salario.erase("alice");
  129.     cout << "Unordered_map apos remover 'alice': ";
  130.     for (auto& par : salario) {
  131.         cout << par.first << " -> " << par.second << ", ";
  132.     }
  133.     cout << endl;
  134.  
  135.     // Verificando o tamanho do unordered_map com size
  136.     cout << "Tamanho do unordered_map: " << salario.size() << endl;
  137.  
  138.     // Limpando todos os elementos do unordered_map com clear
  139.     salario.clear();
  140.     cout << "Tamanho do unordered_map apos clear: " << salario.size() << endl;
  141.  
  142.  
  143.     // ---------- 5. Funcoes uteis para pair ----------
  144.     // Criando e exibindo um pair
  145.     pair<string, int> pessoa = make_pair("alice", 30);
  146.     cout << "Nome: " << pessoa.first << ", Idade: " << pessoa.second << endl;
  147.  
  148.     // Modificando os valores de um pair
  149.     pessoa.first = "carlos";
  150.     pessoa.second = 40;
  151.     cout << "Novo nome: " << pessoa.first << ", Nova idade: " << pessoa.second << endl;
  152.  
  153.     return 0;
  154. }
  155.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement