Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Página 1 de 12 
 
 
 
UNIVERSIDADE VEIGA DE ALMEIDA 
Curso Superior em Gestão da Tecnologia da Informação 
 
 
 
 
 
 
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS 
AVA 1 – DESENVOLVIMENTO DE UM APLICATIVO PARA 
CÁLCULO DA MÉDIA DAS DISCIPLINAS EAD 
 
 
 
 
 
 
 
Campus: Polo Niterói – Centro 
Turno: Virtual 
 
 
 
Página 2 de 12 
 
Enunciado da Avaliação 
 
Analise o procedimento para o cálculo da média de sua disciplina e crie uma 
aplicação (app) que seja capaz de receber as notas de A1, A2 e A3 de um 
aluno e apresentar sua média final na disciplina. 
Um aluno precisa calcular a média obtida em uma disciplina EaD na nossa 
instituição, mas não sabe exatamente como fazer isso. O aluno em questão é 
um exemplo de usuário para uma aplicação que solicite as notas de A1, A2 e 
A3 e apresente sua média. 
 
Procedimentos para elaboração do TD: 
Crie um projeto no Android® Studio e desenvolva a aplicação. Prepare um 
documento em Word com uma capa (apresentando a instituição, o curso, a 
disciplina, o aluno e o professor), uma introdução, o conteúdo com os códigos 
da tela (código XML da View) e os códigos de programação (códigos Java® da 
Controller), a conclusão e a bibliografia. 
Realize o envio da tarefa incluindo o arquivo em Word (ou em PDF). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Página 3 de 12 
 
Entrega da Avaliação 
De acordo com o solicitado, criei um aplicativo para que um aluno possa 
realizar o cálculo da média entre as notas das avaliações A1, A2 e A3 de 
determinada disciplina; de acordo com os critérios e pesos utilizados pela UVA 
para calcular a nota final ponderada. 
 
Avaliação Tipo da Avaliação Peso Nota 
A1 
Avaliação On-line 1 
Avaliação On-line 2 
Peso 4 0 a 10 pontos 
A2 
Avaliação 
Presencial Regular 
Peso 6 0 a 10 pontos 
A3 
Avaliação 
Substitutiva da A2 
Peso 6 0 a 10 pontos 
 
Critérios: 
 
• A nota da A1 não poderá ser substituída por outra nota. 
o Uma nota igual a 0,0 (zero) pontos na A1 implicará na reprovação 
do(a) aluno(a) na(s) disciplina(s). 
 
• A nota da A2 e/ou A3 não poderá ser inferior a 5,0 (cinco), pois isso 
implicará na reprovação do(a) aluno(a) na(s) disciplina(s). 
 
• A nota da A3 terá as seguintes funções: 
o Avaliação de 2ª chamada da A2. 
o Avaliação substitutiva para o(a) aluno(a) melhorar sua Nota Final 
Ponderada, substituindo a A2, caso a nota de A3 seja superior. 
 
• Os campos para entrada das notas A1 e A2 são obrigatórios, sendo 
assim, se algum deles estiver vazio, o cálculo não será realizado. 
 
 
 
 
 
 
Página 4 de 12 
 
 
Código XML da View: 
 
 
<?xml version="1.0" encoding="utf-8"?> 
<androidx.constraintlayout.widget.ConstraintLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
 xmlns:app="http://schemas.android.com/apk/res-auto" 
 xmlns:tools="http://schemas.android.com/tools" 
 android:layout_width="match_parent" 
 android:layout_height="match_parent" 
 tools:context=".MainActivity"> 
 
 <TextView 
 android:id="@+id/titleCalculadoraMedia" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginTop="29dp" 
 android:text="Calculadora de Média - UVA" 
 android:textSize="20sp" 
 android:textStyle="bold" 
 app:layout_constraintEnd_toEndOf="parent" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toTopOf="parent" /> 
 
 <EditText 
 android:id="@+id/inputA1" 
 android:layout_width="0dp" 
 android:layout_height="42dp" 
 android:layout_marginEnd="57dp" 
 android:layout_marginRight="57dp" 
 android:ems="10" 
 android:inputType="numberDecimal" 
 app:layout_constraintBaseline_toBaselineOf="@+id/labelA1" 
 app:layout_constraintEnd_toEndOf="parent" 
 app:layout_constraintStart_toEndOf="@+id/labelA1" /> 
 
 <TextView 
 android:id="@+id/labelA1" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="65dp" 
 android:layout_marginLeft="65dp" 
 android:layout_marginTop="49dp" 
 android:layout_marginEnd="2dp" 
 android:layout_marginRight="2dp" 
 android:text="Nota da A1:" 
 android:textSize="15sp" 
 android:textStyle="bold" 
Página 5 de 12 
 
 app:layout_constraintEnd_toStartOf="@+id/inputA1" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/titleCalculadoraMedia" /> 
 
 <TextView 
 android:id="@+id/labelCampoObrigatorio1" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="2dp" 
 android:layout_marginLeft="2dp" 
 android:text="Campo obrigatório" 
 android:textColor="#FFF44336" 
 android:textSize="11sp" 
 android:textStyle="italic" 
 app:layout_constraintBottom_toBottomOf="@+id/inputA1" 
 app:layout_constraintStart_toStartOf="@+id/inputA1" 
 app:layout_constraintTop_toBottomOf="@+id/inputA1" /> 
 
 <EditText 
 android:id="@+id/inputA2" 
 android:layout_width="0dp" 
 android:layout_height="42dp" 
 android:layout_marginEnd="59dp" 
 android:layout_marginRight="59dp" 
 android:ems="10" 
 android:inputType="numberDecimal" 
 app:layout_constraintBaseline_toBaselineOf="@+id/labelA2" 
 app:layout_constraintEnd_toEndOf="parent" 
 app:layout_constraintStart_toEndOf="@+id/labelA2" /> 
 
 <TextView 
 android:id="@+id/labelA2" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="65dp" 
 android:layout_marginLeft="65dp" 
 android:layout_marginTop="129dp" 
 android:text="Nota da A2:" 
 android:textSize="15sp" 
 android:textStyle="bold" 
 app:layout_constraintEnd_toStartOf="@+id/inputA2" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/titleCalculadoraMedia" /> 
 
 <TextView 
 android:id="@+id/labelCampoObrigatorio2" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="2dp" 
 android:layout_marginLeft="2dp" 
Página 6 de 12 
 
 android:text="Campo obrigatório" 
 android:textColor="#F44336" 
 android:textSize="11sp" 
 android:textStyle="italic" 
 app:layout_constraintBottom_toBottomOf="@+id/inputA2" 
 app:layout_constraintStart_toStartOf="@+id/inputA2" 
 app:layout_constraintTop_toBottomOf="@+id/inputA2" /> 
 
 <EditText 
 android:id="@+id/inputA3" 
 android:layout_width="0dp" 
 android:layout_height="42dp" 
 android:layout_marginEnd="59dp" 
 android:layout_marginRight="59dp" 
 android:ems="10" 
 android:inputType="numberDecimal" 
 app:layout_constraintBaseline_toBaselineOf="@+id/labelA3" 
 app:layout_constraintEnd_toEndOf="parent" 
 app:layout_constraintStart_toEndOf="@+id/labelA3" /> 
 
 <TextView 
 android:id="@+id/labelA3" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="65dp" 
 android:layout_marginLeft="65dp" 
 android:layout_marginTop="209dp" 
 android:text="Nota da A3:" 
 android:textSize="15sp" 
 android:textStyle="bold" 
 app:layout_constraintEnd_toStartOf="@+id/inputA3" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/titleCalculadoraMedia" /> 
 
 <TextView 
 android:id="@+id/labelCampoSubsitutivo" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="2dp" 
 android:layout_marginLeft="2dp"android:text="Nota substitutiva da A2, caso seja superior." 
 android:textColor="#373D3E" 
 android:textSize="10sp" 
 android:textStyle="italic" 
 app:layout_constraintBottom_toBottomOf="@+id/inputA3" 
 app:layout_constraintStart_toStartOf="@+id/inputA3" 
 app:layout_constraintTop_toBottomOf="@+id/inputA3" /> 
 
 <Button 
 android:id="@+id/calculate" 
Página 7 de 12 
 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="65dp" 
 android:layout_marginLeft="65dp" 
 android:layout_marginTop="40dp" 
 android:onClick="calcular" 
 android:text="Calcular" 
 app:backgroundTint="@color/teal_700" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/textAviso" /> 
 
 <Button 
 android:id="@+id/button2" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="80dp" 
 android:layout_marginLeft="80dp" 
 android:layout_marginTop="40dp" 
 android:onClick="limpar" 
 android:text="Limpar" 
 app:backgroundTint="?attr/colorError" 
 app:layout_constraintStart_toEndOf="@+id/calculate" 
 app:layout_constraintTop_toBottomOf="@+id/textAviso" /> 
 
 <TextView 
 android:id="@+id/labelResultado" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="65dp" 
 android:layout_marginLeft="65dp" 
 android:layout_marginTop="45dp" 
 android:text="Nota final:" 
 android:textSize="20sp" 
 android:textStyle="bold" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/calculate" /> 
 
 <TextView 
 android:id="@+id/textResultado" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="165dp" 
 android:layout_marginLeft="165dp" 
 android:layout_marginTop="45dp" 
 android:textColor="#673AB7" 
 android:textSize="20sp" 
 android:textStyle="bold" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/calculate" /> 
 
Página 8 de 12 
 
 <TextView 
 android:id="@+id/textAviso" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:layout_marginStart="65dp" 
 android:layout_marginLeft="65dp" 
 android:layout_marginTop="40dp" 
 android:textColor="#F40505" 
 android:textSize="11sp" 
 android:textStyle="bold" 
 app:layout_constraintStart_toStartOf="parent" 
 app:layout_constraintTop_toBottomOf="@+id/inputA3" /> 
 
 <androidx.constraintlayout.widget.Guideline 
 android:id="@+id/guideline2" 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:orientation="vertical" 
 app:layout_constraintGuide_begin="20dp" /> 
 
</androidx.constraintlayout.widget.ConstraintLayout> 
 
 
 
Código Java: 
 
package com.example.AVA1calculadorademedia; 
 
import androidx.appcompat.app.AppCompatActivity; 
 
import android.os.Bundle; 
import android.view.View; 
import android.widget.EditText; 
import android.widget.TextView; 
 
public class MainActivity extends AppCompatActivity { 
 
 EditText notaA1, notaA2, notaA3; 
 TextView resultado, aviso; 
 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 setContentView(R.layout.activity_main); 
 notaA1 = (EditText) findViewById(R.id.inputA1); 
 notaA2 = (EditText) findViewById(R.id.inputA2); 
 notaA3 = (EditText) findViewById(R.id.inputA3); 
 resultado = (TextView) findViewById(R.id.textResultado); 
 aviso = (TextView) findViewById(R.id.textAviso); 
Página 9 de 12 
 
 } 
 public void calcular(View v) { 
 
 String n1 = notaA1.getText().toString(); 
 String n2 = notaA2.getText().toString(); 
 String n3 = notaA3.getText().toString(); 
 
 if(!n1.isEmpty() && !n2.isEmpty()) { 
 aviso.setText(""); 
 float nota1 = Float.parseFloat(n1); 
 float nota2 = Float.parseFloat(n2); 
 float maiorNota = nota2; 
 
 if(!n3.isEmpty()) { 
 float nota3 = Float.parseFloat(n3); 
 if(nota3 > nota2) maiorNota = nota3; 
 } 
 
 if(nota1 < 0.1 || maiorNota < 5) { 
 double notaFinal = (nota1*0.4) + (maiorNota*0.6) / 2; 
 resultado.setText(String.format("%,.2f", notaFinal) + " - Reprovado"); 
 } else { 
 double notaFinal = (nota1*0.4) + (maiorNota*0.6); 
 
 if(notaFinal >= 6) { 
 resultado.setText(String.format("%,.2f", notaFinal) + " - Aprovado"); 
 } else { 
 resultado.setText(String.format("%,.2f", notaFinal) + " - 
Reprovado"); 
 } 
 } 
 } else { 
 resultado.setText(""); 
 aviso.setText("Atenção: Os campos \"Nota da A1\" e \"Nota da A2\" são 
obrigatórios"); 
 } 
 } 
 
 public void limpar(View v) { 
 notaA1.setText(""); 
 notaA2.setText(""); 
 notaA3.setText(""); 
 resultado.setText(""); 
 aviso.setText(""); 
 } 
} 
 
 
 
 
Página 10 de 12 
 
Telas da Aplicação: 
 
 
 
 
 
 
 
Página 11 de 12 
 
Conclusão: 
 
 
A aplicação foi desenvolvida a partir da IDE Android Studio utilizando a 
linguagem de programação Java. 
Foi possível utilizar vários recursos excelentes do Android Studio e que tornam 
muito simples o desenvolvimento, como por exemplo o fato de podermos 
arrastar os elementos diretamente para o layout da tela e configurar os 
atributos de maneira bem rápida. 
Outro ponto importante é que podemos testar a aplicação durante o 
desenvolvimento a partir da criação de um dispositivo virtual, podendo ser 
possível localizar possíveis bug para corrigir. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Página 12 de 12 
 
Referências: 
Fonte: Ebook – Desenvolvimento de Aplicações Mobile e Distribuídas. 
Módulos, Unidades 1 e 2. Roteiro de Estudo UVA - acesso em: 18/08/2023. 
Fonte: developers - ANDROID STUDIO. Conhecer o Android Studio. Disponível 
em: https://developer.android.com/studio/intro?hl=pt-br - acesso em: 
24/08/2023. 
Fonte: Programação Android Iniciante - Exemplo 01 - Cálculo de Média de 
Duas Notas. Por Paulo Ricardo. 7 de set. de 2017. Disponível em: 
https://www.youtube.com/watch?v=6kpfXY4P3xI - acesso em: 25/08/2023. 
Fonte: Trabalhando com a propriedade Font. Disponível em: 
https://www.devmedia.com.br/trabalhando-com-a-propriedade-
font/24483#:~:text=A%20propriedade%20font%20%C3%A9%20respons%C3%
A1vel,valor%20normal%2C%20italic%20e%20oblique - acesso em: 
24/08/2023. 
Software utilizado: Android Studio. 
https://developer.android.com/studio/intro?hl=pt-br
https://www.youtube.com/watch?v=6kpfXY4P3xI
https://www.devmedia.com.br/trabalhando-com-a-propriedade-font/24483#:~:text=A%20propriedade%20font%20%C3%A9%20respons%C3%A1vel,valor%20normal%2C%20italic%20e%20oblique
https://www.devmedia.com.br/trabalhando-com-a-propriedade-font/24483#:~:text=A%20propriedade%20font%20%C3%A9%20respons%C3%A1vel,valor%20normal%2C%20italic%20e%20oblique
https://www.devmedia.com.br/trabalhando-com-a-propriedade-font/24483#:~:text=A%20propriedade%20font%20%C3%A9%20respons%C3%A1vel,valor%20normal%2C%20italic%20e%20oblique

Mais conteúdos dessa disciplina