Dúvidas, comentários e doaçoes: +55 62 9 8513 2505

Planilha de Dimensionamento de Tubulações Hidráulicas Água Fria e Água Quente Completa
Nossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes.

Portugol ::: Dicas & Truques ::: Cadeias e Caracteres

Como acessar os caracteres individuais de uma palavra ou frase em Portugol usando a função obter_caracter() da biblioteca Texto

Quantidade de visualizações: 1222 vezes
Em algumas situações nós precisamos acessar os caracteres individuais de uma palavra ou frase no Portugol Studio ou Portugol Web Studio. Para isso nós podemos usar a função obter_caracter() da biblioteca Texto.

Esta função pede, como primeiro argumento, a palavra ou frase a partir da qual o caractere será extraído e, como segundo argumento, o índice do caractere (sempre começando em 0 para o primeiro caractere).

Veja um programa Portugol completo no qual obtemos o primeiro caractere de uma palavra:

programa {
  // vamos importar a biblioteca Texto
  inclua biblioteca Texto --> tx
  
  funcao inicio() {
    cadeia palavra = "PORTUGOL"
    caracter letra = tx.obter_caracter(palavra, 0)
    escreva("A letra retornada é: ", letra)
  }
}

Ao executar este código Portugol nós teremos o seguinte resultado:

A letra retornada é: P

Veja agora como podemos usar o laço PARA para percorrer e exibir todos os caracteres individuais da palavra ou frase:

programa {
  // vamos importar a biblioteca Texto
  inclua biblioteca Texto --> tx
  
  funcao inicio() {
    cadeia palavra = "PORTUGOL"

    para (inteiro i = 0; i <= tx.numero_caracteres(palavra) - 1; i++) {
      caracter letra = tx.obter_caracter(palavra, i)
      escreva("A letra é: ", letra, "\n")
    }
  }
}

Ao executar o código novamente nós teremos o seguinte resultado:

A letra é: P
A letra é: O
A letra é: R
A letra é: T
A letra é: U
A letra é: G
A letra é: O
A letra é: L


Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes)

Como gerar vetores e matrizes com números inteiros aleatórios usando a função random.randint() da biblioteca NumPy para - Machine Learning com Python

Quantidade de visualizações: 1555 vezes
Veremos nessa dica como podemos usar o método random.randint() da biblioteca NumPy para gerar vetores e matrizes já preenchidos com números inteiros aleatórios.

Note que a criação de vetores e matrizes preenchidos com números randômicos é uma parte importante para o desenvolvimento de modelos de teste (test models) em Inteligência Artificial (IA), Machine Learning e outras áreas de estudo que envolvem Data Science.

Vamos começar com a forma mais simples do uso da função random.randint() para gerar um vetor de 10 elementos contendo números aleatórios de 0 até 10 (não incluído):

# importamos o módulo random da bibliteca NumPy
from numpy import random

def main():
  # vamos gerar um vetor de números inteiros aleatórios
  #  de 0 (incluído) à 10 (não incluído) 
  valores = random.randint(10, size=10)
  print("O vetor gerado foi: ", valores)  

if __name__== "__main__":
  main()


Ao executar este código teremos um resultado parecido com:

O vetor gerado foi: [0 3 2 3 8 9 3 9 6 4]

Aqui nós informamos o limite alto do valor aleatório a ser gerado (mas ele não é incluído). Se quisermos limitar a faixa inferior, podemos tirar proveito dos parâmetros low e high da função randint(). Veja:

# importamos o módulo random da bibliteca NumPy
from numpy import random

def main():
  # vamos gerar um vetor de números inteiros aleatórios
  #  de 50 (incluído) à 101 (não incluído) 
  valores = random.randint(50, 101, 10)
  print("O vetor gerado foi: ", valores)  

if __name__== "__main__":
  main()

Agora o resultado será parecido com:

O vetor gerado foi: [92 89 66 52 61 77 55 58 72 55]

Para gerarmos uma matriz, por exemplo, de 2 linhas e 4 colunas, só precisamos gerar o vetor de números aleatórios e em seguida usar o método reshape(), também da biblioteca NumPy para converter a matriz de uma dimensão (vetor) em uma matriz de duas dimensões. Veja:

from numpy import random

def main():
  # vamos gerar um vetor de números inteiros aleatórios
  #  de 1 (incluído) à 21 (não incluído) 
  valores = random.randint(1, 21, 8)
  
  # agora vamos converter o vetor para uma matriz
  # de 2 linhas e 4 colunas 
  valores = valores.reshape(2, 4)

  print("A matriz gerada foi: ", valores)  

if __name__== "__main__":
  main()

Quando executamos este código nós temos um resultado parecido com:

A matriz gerada foi:  [[17  5  2  9]
 [14 10 10 19]]

A partir da versão 1.19 da NumPy, os desenvolvedores da biblioteca recomendam o uso do método integers() do módulo default_rng().


C++ ::: Dicas & Truques ::: Arquivos e Diretórios

Como renomear um arquivo em C++ usando a função rename()

Quantidade de visualizações: 12329 vezes
Em algumas situações nossos códigos C++ precisam renomear arquivos. Isso pode ser feito com o auxílio da função rename() ou _rename(), disponível no header io.h or stdio.h (trazido da linguagem C). Veja a assinatura desta função:

int rename(const char *oldname, const char *newname);
Se o arquivo for renomeado com sucesso a função retornará o valor 0. O retorno será -1 se um erro ocorrer. Neste caso a variável global errno será definido como um dos seguintes valores:

a) EINVAL - Invalid argument - Os nomes dos arquivos contém caracteres inválidos;

b) ENOENT - No such file or directory - O caminho do arquivo é inválido;

c) EACCESS - Acesso negado - Algum outro programa está usando este arquivo e mantém controle sobre o mesmo.

Veja um trecho de código C++ no qual renomeamos um arquivo:

#include <iostream>

using namespace std;

int main(int argc, char *argv[]){
  // vamos renomear este arquivo
  char arq_antigo[] = "C:\\Dev-Cpp\\arquivo.txt";
  char arq_novo[] = "C:\\Dev-Cpp\\arquivo2.txt";

  // vamos testar se o arquivo foi renomeado com sucesso
  if(rename(arq_antigo, arq_novo) != 0){
    cout << "Erro: " << strerror(errno) << endl;
  }
  else{
    cout << "Arquivo renomeado com sucesso" << endl;
  }

  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

É possível usar a versão Unicode de rename() ou _rename(). O método _wrename, também presente em io.h or stdio.h é útil quando precisamos internacionalizar nossas aplicações. Veja o exemplo:

#include <iostream>

using namespace std;

int main(int argc, char *argv[]){
  // vamos renomear este arquivo
  wchar_t arq_antigo[] = L"C:\\Dev-Cpp\\arquivo.txt";
  wchar_t arq_novo[] = L"C:\\Dev-Cpp\\arquivo2.txt";

  // vamos testar se o arquivo foi renomeado com sucesso
  if(_wrename(arq_antigo, arq_novo) != 0){
    cout << "Erro: " << strerror(errno) << endl;
  }
  else{
    cout << "Arquivo renomeado com sucesso" << endl;
  }

  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Como testar se um array possui valores repetidos em Java

Quantidade de visualizações: 2350 vezes
Pergunta/Tarefa:

Escreva um programa Java que declara, constrói um vetor de 10 posições e pede ao usuário para informar os valores de seus elementos. Em seguida, varra o vetor e informe a existência ou não de valores repetidos.

Sua saída deverá ser parecida com:

Informe o valor para o índice 0: 3
Informe o valor para o índice 1: 6
Informe o valor para o índice 2: 8
Informe o valor para o índice 3: 10
Informe o valor para o índice 4: 2
Informe o valor para o índice 5: 4
Informe o valor para o índice 6: 6
Informe o valor para o índice 7: 10
Informe o valor para o índice 8: 3
Informe o valor para o índice 9: 30
Há valores repetidos no vetor
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);
      
    // vamos declarar e construir um vetor de 10 elementos
    int valores[] = new int[10];
    
    // vamos pedir que o usuário informe os valores
    for(int i = 0; i < valores.length; i++){
      System.out.print("Informe o valor para o índice " + i + ": ");
      valores[i] = Integer.parseInt(entrada.nextLine());
    }
    
    // agora vamos verificar se o vetor possui valores repetidos
    boolean repetidos = false;
    // percorremos todos os elementos do vetor
    for(int i = 0; i < valores.length; i++){
      // para cada elemento em i nos verificamos os que estão nos indices seguintes
      for(int j = i + 1; j < valores.length; j++){
        // encontramos algum repetido?
        if(valores[j] == valores[i]){
          repetidos = true;
          break; // saímos do laço
        }
      }  
    }
    
    if(repetidos){
      System.out.println("Há valores repetidos no vetor");  
    }
    else{
      System.out.println("Nao há valores repetidos no vetor");  
    }
    
    System.out.println("\n");
  }
}



Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser. Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 19,90


© 2026 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 20 usuários muito felizes estudando em nosso site.