quinta-feira, 18 de março de 2021

Exercicio - Estrutura de um documento HTM5

 


Usando HTM5 crie uma pagina Web que tenha uma aparência igual a da imagem abaixo:


Utilize o seguinte logotipo:


Formate usando o seguinte texto:

         Home

          Galeria

         Contactos

Medias usados, Smartphone, VideoGame, TvCabo, Internet          

Nativos Digitais

          Nasceram a partir de 1980 e cresceram familiarizadas com a tecnologia

        Criado em 2001 pelo professor e educador americano Marc Prensky, o termo “nativo digital” não diz respeito apenas a influenciadores digitais. Ele é aplicado a qualquer pessoa que se enquadre na característica descrita no primeiro parágrafo deste post. Na realidade, Prensky criou o conceito para debater métodos de educação em sala de aula.

      Imigrantes Digitais

          Imigrantes digitais”. São as pessoas que nasceram antes de 1980 e que, embora não tenham crescido com a tecnologia se adaptaram com o tempo.

      Imigrante digital é um termo usado para se referir a uma pessoa que foi criada antes da era digital. Esses indivíduos, geralmente nas gerações anteriores, não cresceram com a computação omnipresente ou com a Internet e, portanto, tiveram que se adaptar à nova linguagem e prática das tecnologias digitais.

      

Shelton Geraldoc © Todos direitos reservados. geraldocnh@gmail.com

Share:

terça-feira, 16 de março de 2021

sábado, 13 de março de 2021

Java Swing - Base de dados

 

Apostila Java Swing e Base de dados.




Share:

Java Swing MDI

 


MDI significa Multiple Document Interface ou uma interface de documentos múltiplos é um método de organização de aplicações gráficas em janelas que residem em uma única janela, a janela principal da aplicação e várias janelas filhos que são abertas dentro da janela principal.
Com múltiplas interfaces de documentos, uma única barra de menu e / ou barra de ferramentas é compartilhado entre todas as janelas filho, reduzindo a desordem e uma utilização mais eficiente do espaço na tela. As janelas filho de um aplicativo pode ser ocultada / mostrada / minimizada / maximizada como um todo. Os autores de aplicações multi-plataforma podem fornecer a seus utilizadores um comportamento consistente da aplicação entre plataformas.

As classes mais usadas são:

·         JinternalFrame

·         JdesktopPane

·         DesktopManager

·         Jframe

·         JDesktopPane

 

JInternalFrame

Um objeto leve que fornece muitas das características de uma estrutura nativa, incluindo arrastar, fechar, mostrar um ícone, redimensionar, exibir títulos, e também possui suporte para uma barra de menus.

É destinado a ser um formulário Filho, ou seja, dependente de um outro. Isto é, quando for exibido, será dentro de um outro principal não podendo exibir se fora dos limites deste.

·         Para o nosso caso, vai ser a opção para o restante das janelas de interação.

 

JDesktopPane

É um recipiente utilizado para criar uma interface de documentos múltiplos ou uma área de trabalho virtual. Você cria objetos JInternalFrame e adicioná-los ao JDesktopPane. A classe JDesktopPane extende o  JLayeredPane para gerenciar os quadros internos potencialmente sobrepostos. Ele também mantém uma referência a uma instância de DesktopManager que é definido pela classe UI para o Look and Feel da aplicação.

 


Share:

sexta-feira, 12 de março de 2021

Palavras chaves e modificadores de acesso

 

         Palavras reservadas      

Consiste num conjunto de identificadores(comandos) válidos na linguagem de programação Java, que possuem um significado predefinido e que não podem ser redefinidos, isto é, não podem ser atribuídos um outro significado além do que foi definido. A seguir é apresentada a lista de palavras reservadas sub-dividida em:

ü                                  Modificadores de acesso:                    

ü  Modificadores de classe, método e variável;

ü  Controle de fluxo;

ü  Tratamento de Erros

ü  Primitivas

 

Modificadores de acesso           

Private: permite o acesso a um método ou variável apenas dentro da própria classe;

Protected:  limita o acesso a um método ou variável ao mesmo pacote ou por subclasses da classe;

public: Faz com que uma classe, método ou variável possa ser acessado a partir de qualquer outra classe.

 

Modificadores de classe, método e variável

abstract: Usada para declarar uma classe que não pode ser instanciada ou método que deve ser implementado por subclasses concretas;

class: Palavra chave para identificar uma classe;

extends: Usada para estender uma classe a outra, isto é, indicar para uma superclasse que uma subclasse está estendendo, (herança);

final: torna impossível estender uma classe, sobrepor um método ou reiniciar uma variável;

implements: Usada para indicar a uma interface que uma classe a implementará;

interface: Palavra chave para identificar uma interface;

native: Indica que um método foi escrito em uma linguagem que só pode ser usada em uma plataforma, exemplo o C++;

new: Usada para instanciar um objeto;

static: Indica que o método ou a variável pertence a classe e não a instancia;

strictfp: Usada na frente de um método para indicar que os números de ponto flutuantes seguirão regras restritas de ponto flutuante em todas as expressões;

syncronized: Indica que um método só pode ser acessado por um seguimento de cada vez;

 

Controle de fluxo

break: Quebra o fluxo de execução do código onde a palavra foi inserida.

case: Executa um bloco de código dependendo da instrução switch.

continue: Faz com que o código existente após essa instrução não seja executado em um loop, indicando a próxima interação do loop.

default: Executará esse bloco de código se nenhuma das instruções switch/case for atendida.

do: Executa um bloco de código um vez e, em seguida junto com a instrução while, processa um teste para determinar se o bloco deve ser executado novamente.

else: Executa um bloco de código alternativo se uma condição if for falsa.

for: Usada para executar um loop condicional em um bloco de código.

 if: Usada para executar um teste lógico verdadeiro ou falso.

instanceof: Determina se um objeto é a instancia de uma classe, superclasse ou interface.

return: Faz o fluxo sair de um método sem executar nenhum código que seja após a instrução (pode retornar uma variável opcionalmente);

switch: Indica a variável a ser confrontada com as instruções case.

while: Executa um bloco de código repetidamente, enquanto um certa condição for verdadeira.


Tratamento de Erros

catch: Declara o bloco de código usado para tratar uma execução.

finally: Bloco de código, geralmente após uma instrução try-catch, que vai ser executado independente de que fluxo do programa for usado no tratamento de uma exceção.

throw: Usada para passar uma execução para o método que chamou o método atual.

throws: Indica o método que passará uma execução para o método que o chamou.

try: Bloco de código que será executado, podendo, porém, causar uma exceção.

assert: Avalia uma expressão condicional para verificar as alternativas do programador.

 
Primitivas

boolean: Verdadeiro ou Falso;

byte: Inteiro de 8 bits);

char: Unidade Unicode (de 16 bits, sem o sinal);

double: Número de ponto flutuante com 64 bits (com sinal);

float: Número de ponto flutuante com 32 bits (com sinal);

int: Número inteiro de 32 bits (com sinal);

long: Número inteiro de 64 bits (com sinal);

short: Número inteiro de 16 bits (com sinal);

Share:

quarta-feira, 10 de março de 2021

Entrada e Saída de Dados

  Entrada e Saída de dados        

O termo Input, significa inserir alguns dados em um programa. Uma entrada pode ser fornecida na forma de um arquivo ou da linha de comando. A programação C fornece um conjunto de funções integradas para ler a entrada fornecida e alimentá-la ao programa de acordo com o pretendido.

O termo Output, significa exibir alguns dados na tela, impressora ou em qualquer arquivo. A programação C fornece um conjunto de funções integradas para a saída de dados na tela do computador, bem como para salvá-los em arquivos de texto ou binários.

Para efectuar as operações de entrada e saída de dados pode-se recorrer as funções scanf () e printf () para exibir a saída de dados para o utilizador.

 Entrada e Saída de dados númericos      

          Inicialização de variáveis       

As variáveis devem ser sempre inicializadas com um valor antes do seu uso. Se isso não for feito, a variável fica com um valor indefinido. Na memória do computador uma variável com valor indefinido é sinónimo de lixo. Exemplo:

        #include <stdio.h>

        main()
        {
           int a;

           printf("O valor de a = %d\n", a); 
        }

Ao ser executado, o programa pode escrever uma coisa deste estilo:

        O valor de a = 1877;
Devem ter sempre o cuidado de inicializar as variáveis antes destas serem utilizadas. Se isso não for feito, o programa muito provavelmente não irá fazer aquilo que se está à espera.
No exemplo concreto que acabei de ilustrar, 1877 é lixo. Isto é, a variável a ficou com o valor 1877 mas ninguém deu instruções ao computador para ele ter lá esse valor.
Já agora, aposto que quase toda a gente vai cometer este tipo de erro quando estiverem a fazer exercícios nas aulas práticas. Eu próprio costumo fazer esse tipo de erros de vez em quando. Nunca desanimem quando têm erros nos vossos programas. É raro um programa funcionar à primeira. Aquilo que se faz é corrigir os erros e voltar a recompilar até que o programa funcione como deve ser.


          Saída de dados       

Na programação C, printf() é uma das principais funções de saída. A função permite exibir uma informação na tela.

Por exemplo

#include <stdio.h>    
int main()
{ 
    // Exibe a string dentro de aspas
    printf("Programação em C");
    return 0;
}


Como é que este programa funciona?

Todos os programas C válidos devem conter a função main (). A execução do código começa no início da função main ().

    printf() - A função imprime a string entre aspas. Para usar printf () é necessário incluir o arquivo de cabeçalho stdio.h usando a instrução #include <stdio.h>.


Exemplo 2: Exibindo um número inteiro

#include <stdio.h>
int main()
{
    int testInteger = 5;
    printf("Number = %d", testInteger);
    return 0;
}

Usou-se o especificador de formato %d para imprimir o tipo int. Aqui, a %d dentro das aspas será substituído pelo valor de testInteger.


Formatação de valores decimais

Em linguagem C, você pode formatar dados decimais (números de ponto flutuante) usando especificadores de formato na função `printf()` para controlar a precisão, largura do campo e outras opções de formatação. Aqui estão alguns exemplos:

**Controle de Precisão:**

Pode controlar a precisão (número de casas decimais exibidas) ao formatar valores decimais usando o especificador de formato %f na função printf(). Você pode especificar a precisão colocando um número após o ponto dentro do especificador de formato %f.

Exemplo 3:
#include <stdio.h>

int main() {
    float valor = 123.456789;
    printf("%.2f\n", valor); // Imprime com 2 casas decimais
    printf("%.4f\n", valor); // Imprime com 4 casas decimais
    printf("%.8f\n", valor); // Imprime com 8 casas decimais
    return 0;
  }


**Largura do Campo:**

Exemplo 4:
#include <stdio.h>
int main() {
    int numero = 42;
    printf("%5d\n", numero); // Largura do campo de 5 caracteres
    printf("%10d\n", numero); // Largura do campo de 10 caracteres
    printf("%-10d\n", numero); // Largura do campo de 10 caracteres, alinhado à esquerda
    return 0;
}


**Notação Científica:**
Exemplo 5:
#include <stdio.h>

int main() {
    double grande_numero = 1234567.89;
    printf("%.2e\n", grande_numero); // Notação científica com 2 casas decimais
    return 0;

}


**Sinal e Zeros à Esquerda:**

Exemplo 6:
#include <stdio.h>

int main() {
    int valor = -42;
    printf("%+d\n", valor); // Inclui sinal (+ ou -)
    printf("%010d\n", valor); // Preenche com zeros à esquerda
    return 0;

}

Lembre-se de que a função `printf()` oferece várias opções de formatação, e você pode combiná-las de acordo com suas necessidades para formatar números decimais da maneira desejada. Consulte a documentação da função `printf()` para obter mais detalhes sobre os especificadores de formato disponíveis.


 Entrada e Saída de dados Literais       

Em linguagem C, a entrada e saída de dados literais (ou seja, dados fixos e pré-definidos) geralmente envolvem o uso de funções de entrada/saída padrão (printf para saída e scanf para entrada). 
Os especificadores de formato %c e %s são usados na função printf() em C para formatar diferentes tipos de dados:

%c - Caractere: O especificador %c é usado para formatar um caractere. Ele é utilizado para imprimir um único caractere, como letras, dígitos ou símbolos. Por exemplo:

     char letra = 'A'; printf("A letra é: %c\n", letra); // Imprime: A


%s - String (Sequência de Caracteres): O especificador %s é usado para formatar uma string (sequência de caracteres). Ele é utilizado para imprimir uma sequência de caracteres terminada por um caractere nulo ('\0'). Por exemplo:

char nome[] = "João"; printf("Olá, %s!\n", nome); // Imprime: Olá, João!



Portanto, a principal diferença entre %c e %s é que %c é usado para formatar caracteres individuais, enquanto %s é usado para formatar strings completas.

Lembre-se de que, ao usar %s, o argumento deve ser um ponteiro para a primeira posição da string (um array de caracteres). Enquanto que, ao usar %c, o argumento deve ser um caractere simples (uma variável do tipo char).

Aqui estão exemplos de como você pode trabalhar com dados literais:

Exemplo 7:
#include <stdio.h>
int main() {
    int idade;
    float altura;
    printf("Digite a sua idade: ");
    scanf("%d", &idade); // Lê o valor da idade
    printf("Digite a sua altura: ");
    scanf("%f", &altura); // Lê o valor da altura
    printf("Idade: %d, Altura: %.2f\n", idade, altura);
    return 0;
}


A entrada de dados literais é possível ao solicitar ao usuário que insira valores específicos usando a função scanf.

A combinação de formatação e entrada/saída permite manipular tanto dados literais quanto dados dinâmicos (fornecidos pelo usuário ou calculados) em um programa C.


Exemplo 8: Exibindo caracteres 

#include <stdio.h>
int main()
{
    char chr = 'a';    
    printf("character = %c", chr);  
    return 0;
} 

Para imprimir char, usa-se o especificador de formato %c.


          Entrada de dados            

Na programação C, scanf () é uma das funções comumente usadas para obter informações do usuário. A função scanf () permite ler os caracteres inseridos via teclado.

Exemplo 9: Entrada de números inteiros e double

Para imprimir valores do tipo float, usamos o especificador de formato %f. Da mesma forma, usamos %lf para imprimir valores double.

#include <stdio.h>
int main()
{
    float num1;
    double num2;

    printf("Digite um número: ");
    scanf("%f", &num1);
    printf("Digite o outro número: ");
scanf("%lf", &num2); printf("num1 = %f\n", num1); printf("num2 = %lf", num2); return 0; }

Aqui, usamos o especificador de formato% d dentro da função scanf() para obter a entrada interna do utilizador. Quando o utilizador insere um número inteiro, ele é armazenado na variável num1.

Observe que usou-se &num1 dentro de scanf(). É porque o &num1 obtém o endereço de num1, e o valor inserido pelo utilizador é armazenado nesse endereço.


          Entrada de strings            

Podemos aceitar a entrada de string em C usando scanf (“% s”, str) . Mas, ele aceita string apenas até encontrar o primeiro espaço. A expressão `scanf("%[^\n]s", nome);` é usada em linguagem C para ler uma linha inteira de entrada, incluindo espaços em branco, até encontrar o caractere de nova linha (`\n`). O `%[^\n]` é um especificador de formato que diz ao `scanf` para ler todos os caracteres até encontrar uma nova linha, e o `s` no final indica que é esperada uma sequência de caracteres (string).

Aqui está um exemplo de uso dessa expressão:

Exemplo 10

#include <stdio.h>
int main() {
    char nome[100]; // Assume que o nome tem no máximo 100 caracteres
    printf("Digite o seu nome: ");
    scanf("%[^\n]s", nome);
    printf("O nome digitado é: %s\n", nome);

    return 0;

}

Neste exemplo, a função `scanf` vai ler uma linha inteira de entrada (até o caractere de nova linha) e armazenar essa linha na variável `nome`. Isso permite que o programa capture um nome completo, incluindo espaços, e o imprima usando o `printf`.


          Comandos de entrada e saída: getchar() e putchar()            

Vamos discutir algumas funções de entrada de dados (diferente do scanf()). A entrada de texto é considerada como um fluxo de caratecteres. Um fluxo texto é uma sequência de caracteres dividida em linhas; cada linha consiste de zero ou mais caracteres seguido do caractere de nova linha (\n). Como programador, você não quer se preocupar em como as linhas são representadas fora do programa. Quem faz isso por você são funções de uma biblioteca padrão.

Suponha que você queira ler um único caractere, mas não quer usar o scanf(). Isso pode ser feito usando a função getchar(). A função putchar() aceita um argumento de entrada, cujo valor será impresso como caracter:

Exemplo 11:

#include <stdio.h>
int main(){
   char ch;
   printf("Digite algum caracter: ");
   ch = getchar();
   printf("\n A tecla pressionada eh %c.\n", ch);
}

O Resultado deste programa na tela é:

   Digite algum caracter: A
    A tecla pressionada eh A.

Outro exemplo:

Exemplo 12:

#include <stdio.h>

int main(){
   char ch;
   printf("Digite outro caracter: ");
   ch = getchar();
   putchar(ch);

}

O Resultado deste programa na tela é:

   Digite outro caracter: B
   B
Share:

Estrutura de um Programa em C

 

Antes de estudarmos os blocos de construção básicos da linguagem de programação C, vamos examinar uma estrutura de um programa C mínima para que possamos tomá-la como uma referência nos próximos tópicos.

Exemplo Olá, Mundo
Um programa C consiste basicamente nas seguintes partes:
 - Comandos do pré-processador
 - Funções
 - Variáveis
 - Declarações e Expressões
 - Comentários

Vejamos um código simples que imprime a mensagem "Olá, Mundo" -

Share:

segunda-feira, 8 de março de 2021

Diferença Linguagem C, C++ & Java

 Diferença  Linguagens C, C ++ e Java


As linguagens de programação C, C ++ e Java são as linguagens de programação mais populares e amplamente utilizadas no mercado. Nesta seção, discutiremos as diferenças entre C, C ++ e Java. Além das semelhanças de sintaxe e de ambos serem orientados a objetos, seu objetivo de design e filosofia são diferentes.


C

C é uma linguagem de programação de uso geral, estruturada, procedimental e de alto nível desenvolvida por Dennis MacAlistair Ritchie em 1972 na Bell Laboratories. O sucessor da linguagem C foi a CPL (Combined Programming Language). É usado principalmente para a programação do sistema, como para desenvolver o sistema operacional, drivers, compiladores, etc.

O exemplo mais conhecido de sistema operacional desenvolvido em linguagem C é o Unix e o Linux.


Características da linguagem C

  • Grande conjunto de operadores
  • Simples, rápido e eficiente
  • Case'sensitive
  • Baixo uso de memória
  • Facilmente extensível
  • Com tipagem estática


C ++

C ++ é uma linguagem de programação orientada a objetos e de propósito geral desenvolvida por Bjarne Stroustrup na Bell Labs em 1979. É baseada na linguagem C ou podemos dizer que é uma extensão da linguagem C. É usado para desenvolver aplicativos de alto desempenho.

Recursos da linguagem C ++

  • Case-Sensitive
  • Linguagem compilada
  • Plataforma independente
  • Alocação de memória dinâmica


Java

Java também é uma linguagem de programação orientada a objetos, baseada em classes, estática, forte, robusta, segura e de alto nível. Foi desenvolvido por James Gosling em 1995. É compilado e interpretado por bot. É usado para desenvolver aplicativos corporativos, móveis e baseados na web.

Recursos do Java

  • Orientado a Objeto
  • Plataforma independente
  • Dinâmico e Distribuído
  • Robusto
  • Multithreaded

A figura a seguir demonstra que C ++ é baseado na linguagem C e Java é baseado na linguagem C ++ e C.


Diferenças básicas

Característica

C

C++

Java

Origem

baseada em BCPL

baseada na linguagem C

baseada em C e C ++

Padrão de programação

Linguagem procedural

Linguagem orientada a objetos

Linguagem orientada a objetos

Estaticidade

Estática

Estática

Dinâmica

Execução do código

Executado diretamente

Executado diretamente

Executado pela JVM

Dependência da plataforma

Depende da plataforma

Depende da plataforma

É independente de plataforma

Tradução

Usa um compilador apenas para traduzir o código em linguagem de máquina

Usa um compilador apenas para traduzir o código em linguagem de máquina

Java usa compilador e interpretador

Tipo de ficheiros

Arquivos .exe

Arquivos .exe

Arquivo .class

Extensão

Extensão .c

Extensão .cpp

Extensão .cpp

Conceito de ponteiro

Oferece suporte a ponteiro

Oferece suporte a ponteiro

Não oferece suporte

União e tipo de dados de estrutura

Oferece suporte

Oferece suporte

Não oferece suporte

Tratamento de exceções

Não oferece suporte  

Oferece suporte  

Oferece suporte  

Gestão da memória

Usa os métodos calloc (), malloc (), free () e realloc ()

Usa o operador new e delete

Usa um coletor de lixo

Instrução goto

Oferece suporte

Oferece suporte

Não suporta

Aplicação

É amplamente usado para desenvolver drivers e sistemas operacionais

É amplamente utilizado para programação de sistema

Desenvolver aplicativos da web, aplicativos móveis e aplicativos do Windows

Tamanho da matriz

Uma matriz deve ser declarada com tamanho

Matriz deve ser declarada com tamanho

Pode ser declarada sem declarar o tamanho


Referências

https://www.javatpoint.com/c-vs-cpp-vs-java

https://leverageedu.com/blog/hi/difference-between-c-and-java/

https://www.educba.com/c-vs-java/

Share:

Seguidores

Visitantes do blog

Pesquisar neste blogue

posts recentes