Você está aqui: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
C ::: Dicas & Truques ::: Strings e Caracteres |
Como verificar a existência de qualquer um dos caracteres de um substring em uma string em C usando a função strpbrk()Quantidade de visualizações: 10740 vezes |
Muitas vezes precisamos verificar se qualquer um de um conjunto de caracteres está contido em uma string. Para isso nós podemos usar a função strpbrk(). Esta função recebe duas strings e retorna um ponteiro para a primeira ocorrência de qualquer um dos caracteres presentes na segunda string e também presentes na primeira string. Veja um exemplo no qual verificamos se uma string contém qualquer um dos digitos de 0 a 9:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
char texto[] = "Gosto muito de C e C++";
char numeros[] = "1234567890";
char *pos_atual = strpbrk(texto, numeros);
if(pos_atual != NULL){
puts("A string contem digitos");
}
else{
puts("A string NAO contem digitos");
}
system("pause");
return 0;
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Um programa que calcule e mostre a tabuada de multiplicação de um número digitado pelo usuário (entre 1 e 10)Quantidade de visualizações: 7030 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que usa o laço for para calcular a tabuada de multiplicação para um número digitado pelo usuário. Este número deve estar entre 1 e 10 (inclusive). Sua saída deve ser parecida com: Informe um valor entre 1 e 10: 8 A tabuada do número 8 é: 8 X 1 = 8 8 X 2 = 16 8 X 3 = 24 8 X 4 = 32 8 X 5 = 40 8 X 6 = 48 8 X 7 = 56 8 X 8 = 64 8 X 9 = 72 8 X 10 = 80 Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos solicitar que o usuário informe um inteiro entre 1 e 10
System.out.print("Informe um valor entre 1 e 10: ");
int numero = Integer.parseInt(entrada.nextLine());
// vamos verificar se o valor está na faixa desejada
if((numero < 1) || (numero > 10)){
System.out.println("O número deve ser entre 1 e 10");
}
else{
// o número é válido....vamos exibir a tabuada
System.out.println("\nA tabuada do número " + numero + " é:\n");
for(int i = 1; i <= 10; i++){
System.out.println(numero + " X " + i + " = " + (numero * i));
}
}
System.out.println("\n");
}
}
|
C ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados boolean nas linguagens C e C++ - Como usar true (verdadeiro) e false (false) em C/C++Quantidade de visualizações: 19229 vezes |
|
Em praticamente todas as linguagens de programação nós encontramos expressões condicionais que definem o fluxo de execução. Expressões condicionais são aquelas que, quando avaliadas, resultam em um valor true (verdadeiro) ou false (falso). Muitas linguagens de programação possuem um tipo booleano que armazena os valores true ou false. Enquanto o C++ possui o tipo bool, o C possui uma forma bem interessante de definir true ou false. Em C, um valor true é qualquer valor diferente de 0, incluindo numeros negativos. Veja:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int pode = 1; // verdadeiro
int nao_pode = 0; // falso
if(pode)
printf("Teste resultou verdadeiro\n\n");
if(!nao_pode)
printf("Teste resultou verdadeiro\n\n");
system("PAUSE");
return 0;
}
Ao executar este código nós teremos o seguinte resultado: Teste resultou verdadeiro Teste resultou verdadeiro Lembre-se então: false em C é o valor zero. Qualquer outro valor é true. Embora C++ já possua o tipo bool, é possível usar a abordagem do zero para false e qualquer outro valor para true em C++ também. Você verá muito código legado usando este artifício. Quer ver algo interessante agora? Execute o seguinte código C++:
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char *argv[]){
bool pode = true;
bool nao_pode = false;
cout << pode << "\n";
cout << nao_pode << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Nos compiladores que obedecem o C++ padrão você verá os valores 1 e 0 serem impressos. |
PHP ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de PHP - Escreva um programa PHP para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no arrayQuantidade de visualizações: 1777 vezes |
|
Pergunta/Tarefa: Dado o seguinte vetor de inteiros: // vamos declarar e construir um vetor de 8 inteiros $valores = array(0, 3, 0, 5, 7, 4, 0, 9); Sua saída deverá ser parecida com: Vetor na ordem original: 0 3 0 5 7 4 0 9 Vetor com os zeros deslocados para o final: 3 5 7 4 9 0 0 0 Veja a resolução comentada deste exercício usando PHP:
<?php
// Este código PHP pode ser executado tanto na linha
// de comando quanto pelo servidor web
// vamos declarar e construir um vetor de 8 inteiros
$valores = array(0, 3, 0, 5, 7, 4, 0, 9);
// vamos mostrar o vetor na ordem original
echo("Vetor na ordem original:\n");
for($i = 0; $i < count($valores); $i++){
echo $valores[$i] . " ";
}
// vamos inicializar j como 0 para que ele aponte para
// o primeiro elemento do vetor
$j = 0;
// agora o laço for percorre todos os elementos do vetor,
// incrementanto a variável i e deixando o j em 0
for($i = 0; $i < count($valores); $i++){
// encontramos um valor que não é 0
if($valores[$i] != 0){
// fazemos a troca entre os elementos nos índices
// i e j
$temp = $valores[$i];
$valores[$i] = $valores[$j];
$valores[$j] = $temp;
// e avançamos o j para o elemento seguinte
$j++;
}
}
// agora mostramos o resultado
echo "\n\nVetor com os zeros deslocados para o final:\n";
for($i = 0; $i < count($valores); $i++){
echo $valores[$i] . " ";
}
?>
Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes. |
C ::: Dicas & Truques ::: Data e Hora |
Como usar o tipo time_t do header <time.h> da linguagem CQuantidade de visualizações: 5448 vezes |
O tipo time_t, presente no header <time.h> é usado quando precisamos representar datas e horas e, quando necessário, efetuar operações aritméticas envolvendo as mesmas. Este tipo é obtido por meio de uma chamada à função time(). Veja:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char *argv[]){
// declara uma variável do tipo time_t e atribui a ela
// o resultado de uma chamada à função time()
time_t hora_atual = time(NULL);
printf("Segundos desde 01/01/1970: %d\n\n", hora_atual);
system("PAUSE");
return 0;
}
Ao executar este trecho de código teremos algo parecido com: Segundos desde 01/01/1970: 1334017044 Como podemos ver, o tipo time_t é apenas um apelido para um long, como declarado no header time.h: typedef long time_t; Desta forma, time_t guarda a quantidade de segundos decorridos desde a meia-noite do dia 01/01/1970 UTC. |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






