C++ ::: Desafios e Lista de Exercícios Resolvidos ::: STL Vector C++ |
Exercícios Resolvidos de C++ - Escreva um programa C++ que retorna os elementos em um vector que são estritamente menores que seus vizinhos adjacentes da esquerda e da direitaQuantidade de visualizações: 450 vezes |
|
Pergunta/Tarefa: Escreva um programa C++ que retorna os elementos em um vector que são estritamente menores que seus vizinhos adjacentes da esquerda e da direita. Seu código deverá pedir para o usuário informar 10 valores inteiros, guardá-los em um vector e então calcular e exibir o resultado. Sua saída deverá ser parecida com: Informe o 1.o valor: 8 Informe o 2.o valor: 4 Informe o 3.o valor: 9 Informe o 4.o valor: 3 Informe o 5.o valor: 1 Informe o 6.o valor: 6 Informe o 7.o valor: 2 Informe o 8.o valor: 7 Informe o 9.o valor: 3 Informe o 10.o valor: 8 Conteúdo do vector: 8 4 9 3 1 6 2 7 3 8 Os elementos menores que seus vizinhos adjascentes são: 4 1 2 3 Veja a resolução comentada deste exercício usando C++:
// vamos fazer os includes ncessários
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
// função para encontrar os elementos no vector que são menores
// que seus vizinhos adjacentes
vector<int> verificar(vector<int> valores) {
// vamos inicializar um vector vazio para guardar os elementos
// que passarem na condição
vector<int> temp;
// vamos percorrer o vector recebido como argumento
for(int i = 1; i < valores.size() - 1; i++) {
// o elemento atual é menor que o elemento anterior e posterior a ele?
if(valores[i] < valores[i - 1] && valores[i] < valores[i + 1]) {
// vamos adicionar no vector temporário
temp.push_back(valores[i]);
}
}
// retornamos o vector temporário
return temp;
}
// função principal do programa
int main(int argc, char *argv[]) {
// vamos criar o vector que guardará os valores informados
// pelo usuário
vector<int> numeros;
int valor;
// vamos ler 10 números inteiros
for (int i = 0; i < 10; i++) {
cout << "Informe o " << (i + 1) << ".o valor: ";
cin >> valor;
numeros.push_back(valor);
}
// vamos mostrar o conteúdo do vector original
cout << "\nConteúdo do vector: ";
for (int n: numeros) {
cout << n << " ";
}
// agora vamos testar os números que são menores que seus
// vizinhos adjascentes
vector<int> resultado = verificar(numeros);
cout << "\n\nOs elementos menores que seus vizinhos adjascentes são:\n\n";
for (int n: resultado) {
cout << n << " ";
}
cout << "\n\n";
return EXIT_SUCCESS;
}
|
C ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Apostila C para iniciantes - Como escrever suas próprias funções em CQuantidade de visualizações: 11161 vezes |
|
As funções na linguagem C têm por objetivo dividir nossos programas em partes menores. Em vez de colocar todo o nosso código na função main() nós podemos criar nossas próprias funções e, desta forma, agrupar funcionalidades relacionadas. Suponha que estejamos desenvolvendo um editor de texto em C. Poderíamos então ter funções que abrem o arquivo a ser exibido no editor, que salvam o arquivo, que verificam se houve alterações no texto, etc. E a maior vantagem disso é que conseguimos promover o reaproveitamento de código, uma vez que, diferente da função main(), as funções disponíveis na linguagem e aquelas que nós mesmos criamos podem ser chamadas mais de uma vez durante a execução do programa. Então, já sabemos que uma função não é nada mais que um bloco de códigos situado fora da função main() e que pode ser chamado a partir da função main() ou de outras funções no programa. Sendo assim, vamos escrever nossa primeira função em C. Veja o código a seguir:
#include <stdio.h>
#include <stdlib.h>
// uma função que escreve uma frase
// na tela
void escrever(void){
printf("Sou uma funcao");
}
int main(int argc, char *argv[]){
// efetua uma chamada à função escrever
escrever();
puts("\n\n");
system("PAUSE");
return 0;
}
Neste programa nós temos uma função chamada escrever() que apenas escreve uma frase na tela. Note o uso de void para indicar que a função não retorna nada e não aceita nenhum argumento. Alguns compiladores (tais como Dev-C++) não exigem que coloquemos void para indicar a ausência de parâmetros na função. Assim, a função acima pode ser reescrita da seguinte forma:
void escrever(){
printf("Sou uma funcao");
}
Importante notar que, dentro do corpo de uma função, podemos inserir a quantidade de código que desejarmos. Isso é importante, uma vez que a tarefa realizada por uma função pode não ser tão simples quanto o exemplo que usamos até este ponto. Veja um programa que contém uma função personalizada mais elaborada. Note as duas chamadas a esta função a partir da função main():
#include <stdio.h>
#include <stdlib.h>
// uma função que escreve uma frase
// na tela
void escrever(){
char nome[] = "Osmar J. Silva";
printf("Ola, meu nome e %s\n", nome);
}
int main(int argc, char *argv[]){
printf("Sou main. Vou chamar a funcao escrever()\n");
// efetua uma chamada à função escrever
escrever();
// efetua outra chamada à função escrever
escrever();
printf("Acabei de efetuar chamadas a funcao escrever()");
puts("\n\n");
system("PAUSE");
return 0;
}
Funções podem receber argumentos e retornar valores. E quando isso acontece nós estamos realmente escrevendo funções úteis. Quando perceber que já aprendeu a escrever funções simples como as demonstradas nesta dica, volte sua atenção para as funções mais elaboradas que tratamos em outras dicas relacionadas. |
C# ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar a instrução switch do C#Quantidade de visualizações: 26809 vezes |
|
A instrução switch da linguagem C# é útil quando queremos testar condições nas quais o uso de if..else if..else poderia ser considerado excessivo ou não aplicável. Esta instrução recebe uma variável como argumento e testa seu valor por meio de cláusulas case. Veja o exemplo:
static void Main(string[] args){
Console.Write("Digite um número inteiro: ");
int valor = int.Parse(Console.ReadLine());
switch(valor){
case 1:
Console.WriteLine("Você digitou o valor 1");
break;
case 2:
Console.WriteLine("Você digitou o valor 2");
break;
case 3:
Console.WriteLine("Você digitou o valor 3");
break;
default:
Console.WriteLine("Valor incorreto.");
break;
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Note que a instrução switch possui uma cláusula default para os casos nos quais o valor da variável não estiver presente em nenhuma das cláusulas case. Observe também o uso da instrução break para evitar a avaliação das cláusulas seguintes àquela na qual o valor desejado foi encontrado. Qualquer objeto, valor ou tipo referência que puder ser convertido em um valor inteiro, caractere, enumeração (enum) ou string pode ser usado como argumento para uma instrução switch. Veja:
static void Main(string[] args){
Console.Write("Digite uma letra: ");
char letra = Char.Parse(Console.ReadLine().ToLower());
switch(letra){
case "a":
Console.WriteLine("Você digitou a letra a");
break;
case "b":
Console.WriteLine("Você digitou a letra b");
break;
case "c":
Console.WriteLine("Você digitou a letra c");
break;
default:
Console.WriteLine("Letra inválida.");
break;
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
É possível haver cláusulas case vazias. Neste caso, o bloco de instruções é executado caso o valor da variável seja encontrado em qualquer uma das cláusulas. Veja:
static void Main(string[] args){
Console.Write("Digite uma letra: ");
char letra = Char.Parse(Console.ReadLine().ToLower());
switch(letra){
case "a":
case "b":
Console.WriteLine("Você digitou a ou b");
break;
case "c":
case "d":
Console.WriteLine("Você digitou c ou d");
break;
case "e":
Console.WriteLine("Você digitou a letra e");
break;
default:
Console.WriteLine("Letra inválida.");
break;
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
|
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como verificar se uma string contém apenas caracteres de espaços em Python usando a função isspace()Quantidade de visualizações: 12129 vezes |
Este exemplo mostra como como usar a função isspace() para verificar se uma string contém apenas caracteres de espaço. Se qualquer caractere, diferente do espaço, for encontrado, a função retorna False.
def main():
# uma frase contendo apenas espaços
frase = " "
# vamos verificar se a string contém apenas espaços
if frase.isspace():
print("A string contém apenas espaços")
else:
print("A string não contém apenas espaços")
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: A string contém apenas espaços. |
Você também poderá gostar das dicas e truques de programação abaixo |
|
JavaScript - Como calcular o comprimento da hipotenusa em JavaScript dadas as medidas do cateto oposto e do cateto adjascente Python - Como converter Centímetros Cúbicos em Metros Cúbicos em Python - Python para Física e Engenharia |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





