Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Python ::: Dicas & Truques ::: Sistema

Como retornar o nome do usuário logado no Windows ou Linux em Python usando as funções os.getlogin() ou getpass.getuser()

Quantidade de visualizações: 6888 vezes
Em algumas situações nossos códigos Python precisam retornar o nome do usuário atualmente logado no sistema, ou seja, o usuário atual do Windows ou Linux (Sistemas Unix). Para isso nós podemos usar as funções os.getlogin() ou getpass.getuser().

Vamos ver primeiro um exemplo usando o método getlogin() do módulo os:

# importamos o módulo os
import os as sistema

def main():
  # vamos obter o nome do usuário logado no sistema
  usuario = sistema.getlogin()
......


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

O usuário logado no momento é: Osmar

Veja agora o mesmo resultado usando o módulo getpass:

# importamos o módulo getpass
import getpass

def main():
  # vamos obter o nome do usuário logado no sistema
  usuario = getpass.getuser() 
......


A documentação do Python recomenda que devemos sempre dar preferência ao método getpass.getuser(), uma vez que este verifica as variáveis de ambiente LOGNAME ou USERNAME para descobrir o nome do usuário logado no sistema. Caso não seja possível encontrar o valor nessas duas variáveis, a função getpass.getuser() procura em pwd.getpwuid(os.getuid())[0]. Note, porém, que o módulo pwd é exclusivo para sistemas Unix.

Link para compartilhar na Internet ou com seus amigos:

JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como adicionar elementos no início de um array JavaScript usando a função unshift() do objeto Array

Quantidade de visualizações: 7243 vezes
Nesta dica mostrarei como adicionar um ou mais elementos no início de um array da linguagem JavaScript usando a função unshift() do objeto Array. Esta função é chamada na variável do tipo array e recebe um ou mais elementos, os quais serão inseridos no início do vetor.

Veja o código JavaScript completo para o exemplo:

<!doctype html>
<html>
<head>
  <title>Arrays em JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos criar um array em JavaScript
  var valores = new Array(1, 2, 3, 4, 5);
  
  // agora vamos mostrar o vetor criado
  document.write("Valores no array: " + valores 
......


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

Valores no array: 1,2,3,4,5
Adicionei três elementos no início do array
Valores no array: 6,7,8,1,2,3,4,5


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercícios Resolvidos de Java - Um método recursivo que calcula o fatorial de um determinado número inteiro

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

Na matemática, o fatorial de um número natural n, representado por n!, é o produto de todos os inteiros positivos menores ou iguais a n.

O fatorial de um número n pode ser definido recursivamente da seguinte forma:

0! = 1;
n! = n x (n - 1)!; sendo n > 0
Escreva um método recursivo que recebe um valor inteiro do tipo int e retorne seu fatorial como um long. Seu método deverá possuir a seguinte assinatura:

public static long fatorial(int n){
  // sua implementação aqui
}
Sua saída deverá ser parecida com:

Informe um número inteiro: 5
O fatorial do número informado é: 120
Resposta/Solução:

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) {
    // cria um novo objeto da classe Scanner
    Scanner entrada = new Scanner(System.in);
    
    // vamos solicitar o número inteiro
    System.out.print("Informe um número inteiro: ");
    // lê o número
    int numero = Integer.parseInt(entrada.nextLine());
    
    // calcula o fatorial corresponde ao número informado
......



C# ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço do...while da linguagem C#

Quantidade de visualizações: 11435 vezes
O laço do...while (faça...enquanto) é usado quando queremos repetir uma instrução ou bloco de instruções ENQUANTO uma condição for satisfatória. A única diferença entre este laço e o laço while, é que, no laço do...while a condição de parada é testada após a iteração, o que garante que o laço do...while será executado no mínimo uma vez. No laço while a condição é testada antes da iteração. Veja um exemplo:

static void Main(string[] args){
  int valor = 1;

  do{
    Console.WriteLine("{0}", valor);
    valor++;
......


Este trecho de código conta de 1 até 10. Veja que após cada iteração do laço nós testamos se o valor da variável de controle é menor ou igual a 10. A próxima iteração acontece somente se esta condição for satisfeita. Note ainda que dentro de cada iteração nós incrementamos o valor da variável de controle. Isso é feito para que o laço não seja executado infinitamente.

Veja um outro exemplo de laço do...while, desta vez simulando um menu de opções:

static void Main(string[] args){
  // variável que registra a opção do usuário
  int opcao;

  // laço do..while que mostra as opções do menu enquanto
  // o valor -1 não for informado
  do{
    // lê a opção
    Console.Write("Informe a opção 1, 2 ou 3" +
      " (-1 para sair): ");
    opcao = int.Parse(Console.ReadLine());

    switch (opcao){
      case 1:
        Console.WriteLine("Executando a opção 1");
......


O laço do...while não é tão usado quanto o laço while. Use-o naquelas situações em que o laço deverá ser executado no mínimo uma vez.


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

Como abrir ou criar arquivos em C usando a função fopen()

Quantidade de visualizações: 66000 vezes
Há muitas situações nas quais precisamos ler ou gravar dados em arquivos a partir de nossos programas C. O primeiro passo para esta tarefa é aprender a usar a função fopen(). Esta função é a responsável por conectar um ponteiro de arquivos ao arquivo que queremos manipular. Veja sua assinatura:

FILE *fopen(const char *nome, const char *modo);


O parâmetro nome é uma string que indica o nome do arquivo a ser aberto ou criado. O parâmetro modo indica se o arquivo será aberto para leitura, escrita ou ambos.

Antes de continuarmos, veja um trecho de código que tenta abrir um arquivo chamado "testes.txt" localizado no diretório "c:\":

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  FILE *arquivo = fopen("c:\\testes.txt", "r");

  // testa se o arquivo foi aberto com sucesso
  if(arquivo != NULL)
......


Veja que a primeira linha declara um ponteiro para a estrutura FILE e atribui a este ponteiro o resultado de uma chamada à função fopen(). Se o arquivo for aberto com sucesso, poderemos manipulá-lo a partir do ponteiro *arquivo. Do contrário, o valor NULL será retornado.

A linguagem C padrão permite a definição dos seguintes modos de abertura de arquivos:

a - abre um arquivo para inserção. Se o arquivo não existir, o sistema operacional tentará criá-lo.

r - abre um arquivo existente para leitura.

w - abre um arquivo para escrita. Se o arquivo não existir, o sistema operacional tentará criá-lo. Se o arquivo existir, todo o seu conteúdo será substituído pelo novo conteúdo.

r+ - abre um arquivo existente para leitura e gravação.

w+ - abre um arquivo para leitura e escrita. Se o arquivo não existir, o sistema operacional tentará criá-lo. Se o arquivo existir, todo o seu conteúdo será substituído pelo novo conteúdo.

a+ - abre um arquivo para inserção e leitura. Se o arquivo não existir, o sistema operacional tentará criá-lo.


C ::: Dicas & Truques ::: Strings e Caracteres

Como usar a função isdigit() do header ctype.h da linguagem C para verificar se um caractere é um dígito de 0 a 9

Quantidade de visualizações: 14081 vezes
Em algumas situações podemos precisar verificar se um dado caractere é um dígito (número) de 0 a 9. Isso pode ser feito com o auxílio da função isdigit() no header ctype.h. Esta função recebe um caractere e retorna um valor diferente de 0 se o caractere testado for um dígito de 0 a 9. Caso contrário o retorno é 0. Veja um exemplo completo de seu uso:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

int main(int argc, char *argv[]){
  char caractere;

  // vamos ler o caractere informado pelo usuário
  printf("Informe um caractere e tecle ENTER: ");
  scanf("%c", &caractere);
......



Desafios, Exercícios e Algoritmos Resolvidos de C

Veja mais Dicas e truques de C

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

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



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