Mudanças entre as edições de "Go: Exercícios"
(6 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
+ | |||
Afluentes: [[Sistemas Distribuídos e Mobile]] | Afluentes: [[Sistemas Distribuídos e Mobile]] | ||
− | |||
= Exercícios de Go = | = Exercícios de Go = | ||
Utilizando a linguagem de programação Go, desenvolva programas para resolver os seguintes exercícios. | Utilizando a linguagem de programação Go, desenvolva programas para resolver os seguintes exercícios. | ||
+ | |||
+ | [https://forms.gle/WF91S8Txy7f6k9Gx8 Formulário de participação] (aberto apenas 28/08/2024) | ||
== Exercício 1 == | == Exercício 1 == | ||
Linha 11: | Linha 13: | ||
2) Crie um vetor de números Float64 e já na inicialização da variável coloque elementos no vetor referente às notas finais dos alunos de uma turma. Calcule a média das notas da turma e imprima na tela. | 2) Crie um vetor de números Float64 e já na inicialização da variável coloque elementos no vetor referente às notas finais dos alunos de uma turma. Calcule a média das notas da turma e imprima na tela. | ||
− | 3) Faça um programa | + | 3) Faça um programa que mostre o resultado das seguintes expressões: |
* (-(-9) + sqrt((-9) * (-9) - 4 * 3 * 6)) / (2 * 3) | * (-(-9) + sqrt((-9) * (-9) - 4 * 3 * 6)) / (2 * 3) | ||
* ((pow(3, 2) == 9) && (acos(0) == 0)) || (4 % 8 == 3) | * ((pow(3, 2) == 9) && (acos(0) == 0)) || (4 % 8 == 3) | ||
− | 4) Escreva programas | + | 4) Escreva programas para converter uma temperatura dada em graus Fahrenheit para graus Celsius. |
== Exercícios 2 == | == Exercícios 2 == | ||
− | 1) Faça um programa | + | 1) Faça um programa que leia os valores A, B, C e imprima na tela se a soma de A + B é menor que C. |
2) Faça um programa que leia o nome, o sexo e o estado civil de uma pessoa. Caso sexo seja “F” e estado civil seja “CASADA”, solicitar o tempo de casada (anos). | 2) Faça um programa que leia o nome, o sexo e o estado civil de uma pessoa. Caso sexo seja “F” e estado civil seja “CASADA”, solicitar o tempo de casada (anos). | ||
Linha 88: | Linha 90: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | 2. Seja o seguinte trecho de programa | ||
+ | |||
+ | <syntaxhighlight lang=go> | ||
+ | var i, j int = 3, 5 | ||
+ | p := &i | ||
+ | q := &j | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Qual será o valor das seguintes expressões: | ||
+ | |||
+ | * a) p==&i; | ||
+ | * b) *p - *q; | ||
+ | * c) &p==&i; | ||
+ | * d) 3* *p/(*q)+7 | ||
+ | |||
+ | 3. Explique o programa abaixo. Encontre o erro, corrija-o para que o mesmo escreva o número 10 na tela. | ||
+ | |||
+ | <syntaxhighlight lang=go> | ||
+ | package main | ||
+ | |||
+ | import "fmt" | ||
+ | |||
+ | func main() { | ||
+ | var x int | ||
+ | p := &x | ||
+ | q := &p | ||
+ | x = 10 | ||
+ | fmt.Println(&q) | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Exercícios 5 == | ||
+ | |||
+ | 1. Fazer uma função que retorna a soma, a diferença e o produto entre dois números. | ||
+ | |||
+ | 2. Faça uma função que passa dois inteiros como parâmetro e troca seus valores. Faça um programa que utilize essa função. | ||
+ | |||
+ | 3. Fazer uma função que retorna a razão entre dois números. A função deve retornar pelo comando return o valor 1 se a operação foi possível e o valor 0 se a operação não foi possível (divisão por zero, por exemplo). | ||
+ | |||
+ | 4. Fazer uma função para ler e retornar o valor das 3 notas de um aluno. | ||
+ | |||
+ | == Exercícios 6 == | ||
+ | 1. Ler os dados para vários clientes, guardar todos na memória (em um vetor de structs), e imprimir o maior salário e a média das idades. Faça o programa de duas formas: | ||
+ | |||
+ | * a) não orientada a objetos | ||
+ | * b) orientada a objetos |
Edição atual tal como às 19h56min de 28 de agosto de 2024
Afluentes: Sistemas Distribuídos e Mobile
Exercícios de Go
Utilizando a linguagem de programação Go, desenvolva programas para resolver os seguintes exercícios.
Formulário de participação (aberto apenas 28/08/2024)
Exercício 1
1). Tendo 3 notas, sejam elas n1, n2 e n3, tire a média aritmética das notas e depois imprima a nota. Caso o aluno tirou igual ou mais que sete, informe que ele foi aprovado, caso a nota seja maior que quatro, mas menor que sete, então está de exame e, caso seja menor que quatro, informe que foi reprovado.
2) Crie um vetor de números Float64 e já na inicialização da variável coloque elementos no vetor referente às notas finais dos alunos de uma turma. Calcule a média das notas da turma e imprima na tela.
3) Faça um programa que mostre o resultado das seguintes expressões:
- (-(-9) + sqrt((-9) * (-9) - 4 * 3 * 6)) / (2 * 3)
- ((pow(3, 2) == 9) && (acos(0) == 0)) || (4 % 8 == 3)
4) Escreva programas para converter uma temperatura dada em graus Fahrenheit para graus Celsius.
Exercícios 2
1) Faça um programa que leia os valores A, B, C e imprima na tela se a soma de A + B é menor que C.
2) Faça um programa que leia o nome, o sexo e o estado civil de uma pessoa. Caso sexo seja “F” e estado civil seja “CASADA”, solicitar o tempo de casada (anos).
3) Faça um programa para receber um número qualquer e informar na tela se é par ou ímpar.
4) Faça um programa que leia dois valores inteiros A e B se os valores forem iguais deverá se somar os dois, caso contrário multiplique A por B. Ao final de qualquer um dos cálculos deve-se atribuir o resultado para uma variável C e mostrar seu conteúdo na tela.
5) Encontrar o dobro de um número caso ele seja positivo e o seu triplo caso seja negativo, imprimindo o resultado.
6) Escreva um programa que lê dois valores booleanos (lógicos) e então determina se ambos são VERDADEIROS ou FALSOS.
7) Faça um programa que leia uma variável e some 5 caso seja par ou some 8 caso seja ímpar, imprimir o resultado desta operação.
8) Escreva um programa que leia três valores inteiros e diferentes e mostre-os em ordem decrescente.
9) Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um programa que calcule seu peso ideal, utilizando as seguintes fórmulas:
- para homens: (72.7 * h) – 58
- para mulheres: (62.1 * h) – 44.7
10) O IMC – Indice de Massa Corporal é um critério da Organização Mundial de Saúde para dar uma indicação sobre a condição de peso de uma pessoa adulta. A fórmula é IMC = peso / ( altura ) 2 Elabore um programa que leia o peso e a altura de um adulto e mostre sua condição de acordo com a tabela abaixo.
IMC em adultos Condição
- Abaixo de 18,5 Abaixo do peso
- Entre 18,5 e 25 Peso normal
- Entre 25 e 30 Acima do peso
- Acima de 30 obeso
Exercício 3
1) Desenvolver um programa que efetue a soma de todos os números ímpares que são múltiplos de três e que se encontram no conjunto dos números de 1 até 500.
2) Desenvolver um programa que leia a altura de 10 pessoas. Este programa deverá calcular e mostrar :
- A menor altura do grupo
- A maior altura do grupo
3) Desenvolver um programa que leia um número não determinado de valores e calcule e escreva a média aritmética dos valores lidos, a quantidade de valores positivos, a quantidade de valores negativos e o percentual de valores negativos e positivos.
4) Escrever um programa que leia uma quantidade desconhecida de números e conte quantos deles estão nos seguintes intervalos: [0-25], [26-50], [51-75] e [76-100]. A entrada de dados deve terminar quando for lido um número negativo.
5) Faça um programa estruturado que leia uma quantidade não determinada de números positivos. Calcule a quantidade de números pares e ímpares, a média de valores pares e a média geral dos números lidos. O número que encerrará a leitura será zero.
6) Escrever um programa que gera e escreve os números ímpares entre 100 e 200.
7) Escrever um programa que leia um valor para uma variável N de 1 a 10 e calcule a tabuada de N. Mostre a tabuada na forma: 0 x N = 0, 1 x N = 1N, 2 x N = 2N, ..., 10 x N = 10N.
8) Escreva um programa que leia um valor inicial A e uma razão R e imprima uma sequência em P.A. contendo 10 valores.
9) Escreva um programa que leia um valor inicial A e uma razão R e imprima uma sequência em P.G. contendo 10 valores.
10) Escreva um programa que leia um valor inicial A e imprima a sequência de valores do cálculo de A! e o seu resultado. Ex: 5! = 5 X 4 X 3 X 2 X 1 = 120
Exercícios 4
1. O que há de errado com o programa abaixo?
package main
import "fmt"
func main() {
x := 10
p := &x
fmt.Println("O valor de x é ", p)
}
2. Seja o seguinte trecho de programa
var i, j int = 3, 5
p := &i
q := &j
Qual será o valor das seguintes expressões:
- a) p==&i;
- b) *p - *q;
- c) &p==&i;
- d) 3* *p/(*q)+7
3. Explique o programa abaixo. Encontre o erro, corrija-o para que o mesmo escreva o número 10 na tela.
package main
import "fmt"
func main() {
var x int
p := &x
q := &p
x = 10
fmt.Println(&q)
}
Exercícios 5
1. Fazer uma função que retorna a soma, a diferença e o produto entre dois números.
2. Faça uma função que passa dois inteiros como parâmetro e troca seus valores. Faça um programa que utilize essa função.
3. Fazer uma função que retorna a razão entre dois números. A função deve retornar pelo comando return o valor 1 se a operação foi possível e o valor 0 se a operação não foi possível (divisão por zero, por exemplo).
4. Fazer uma função para ler e retornar o valor das 3 notas de um aluno.
Exercícios 6
1. Ler os dados para vários clientes, guardar todos na memória (em um vetor de structs), e imprimir o maior salário e a média das idades. Faça o programa de duas formas:
- a) não orientada a objetos
- b) orientada a objetos