Thiago André Cardoso

Membros
  • Content Count

    69
  • Joined

  • Last visited

Community Reputation

0 Neutro

About Thiago André Cardoso

  • Birthday 12/05/1987

Contatos

  • Website URL
    https://github.com/doctorwho1998
  • Skype
    thiagoandreqi

Perfil

  • Gender
    Male
  • Location
    Brazil
  • Interests
    Encontrar pessoas interessadas em aprender lógica de programação online.

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. /* *Indicar o maior valor num vetor */ package livro.recursividade; /** * @author thiagoandreqi */ public class Maximo { public static void main(String[] args) { int v[] = {2, 4, 3}; int resultado = maximo(v, v.length); System.out.println("Máximo = " + resultado); } public static int maximo(int v[], int n) { if (n == 1) { return v[0]; } else { int x = maximo(v, n - 1); if (x > v[n - 1]) { return x; } else { return v[n - 1]; } } } } //Aulas particulares de programação (85) 999273805
  2. Peço licença aos moderadores do fórum e caso não seja permitido este tipo de divulgação, eu retiro de imediato. A quem interessar possa: Curso particular online de Java para iniciantes. Contato: (85) 999273805 Temos um ótimo método de ensino com 100% de satisfação dos alunos. Agradeço desde já.
  3. Uso de recursividade. /* * Retornar a diferença entre o elemento máximo e o mínimo do vetor */ package livro.recursividade; /** * @author thiagoandreqi */ public class DiferencaMaxMin232 { public static void main(String[] args) { int v[] = {2, 3, 3, 8}; int r = diferenca(v, v.length, 1, v[0], v[0]); System.out.println("Diferença = " + r); } /*A função retorna a diferença entre um maior elemento e um menor elemento de um vetor v[0.. n -1] */ public static int diferenca(int v[], int n, int i, int maior, int menor) { if (i == n) { return maior - menor; } else { if (v[i] > maior) { System.out.println("v[" + i + "] " + v[i]); return diferenca(v, n, i + 1, v[i], menor); } if (v[i] < menor) { System.out.println("v[" + i + "] " + v[i]); return diferenca(v, n, i + 1, maior, v[i]); } else { System.out.println("v[" + i + "] " + v[i]); return diferenca(v, n, i + 1, maior, menor); } } } } Caso esteja começando em Java e quiser o acompanhamento de um professor particular, só entrar em contato: (85) 999273805 Uso de recursividade. /* * Retornar a diferença entre o elemento máximo e o mínimo do vetor */ package livro.recursividade; /** * @author thiagoandreqi */ public class DiferencaMaxMin232 { public static void main(String[] args) { int v[] = {2, 3, 3, 8}; int r = diferenca(v, v.length, 1, v[0], v[0]); System.out.println("Diferença = " + r); } /*A função retorna a diferença entre um maior elemento e um menor elemento de um vetor v[0.. n -1] */ public static int diferenca(int v[], int n, int i, int maior, int menor) { if (i == n) { return maior - menor; } else { if (v[i] > maior) { System.out.println("v[" + i + "] " + v[i]); return diferenca(v, n, i + 1, v[i], menor); } if (v[i] < menor) { System.out.println("v[" + i + "] " + v[i]); return diferenca(v, n, i + 1, maior, v[i]); } else { System.out.println("v[" + i + "] " + v[i]); return diferenca(v, n, i + 1, maior, menor); } } } }
  4. Pra quem quiser dá uma olhada de como foi feito o algoritmo: https://github.com/doctorwho1998/java/blob/master/verificaExpressaoMath
  5. Vamos tentar destrinchar essa explicação: Realmente o = significa atribuir. Exemplo: x = 3 (x recebe 3) ou (3 é atribuído a x) O valor da direita é atribuído a variável da esquerda. O == dois iguais é usado na operação relacional Quando iremos comparar dois valores. 3 == 4 (3 é igual a 4) if (x == 3) { } Caso se interesse: https://profes.com.br/thiago.andre.cardoso.silva
  6. Boa noite amigo. Você começou o programa? Se ainda estiver com dúvidas, posta o que fez que te ajudamos a entender melhor e terminar.
  7. Eu quando comecei a programar, sempre quis um professor particular para me ajudar em projetos etc. Depois de anos estudando e ensinando em escolas técnicas de programação resolvi também dá aulas particulares. Espero que gostem! https://profes.com.br/thiago.andre.cardoso.silva
  8. você tem um scanf sem o & scanf("%f",pesot); Tenta fazer o código enxuto primeiro, depois implementa com os while etc... #include <stdio.h> #include <math.h> #include <stdlib.h> void main() { float prova=5, quiz=6, trab=8, pesop=0, pesoq=0, pesot=0, pesototal=0, media=0; pesop = 3; pesoq = 5; pesot = 2; pesototal = pesop + pesoq + pesot; if (pesototal!=10) { printf("Os pesos colocados não correspondem a uma média que vale 10 pontos, favor corrija-os\n\n\n"); } else { media = (prova*(pesop/10))+(quiz*(pesoq/10))+(trab*(pesot/10)); if (media>=7.0) { printf("Parabéns, você foi aprovado nesta matéria com média %f.2\n", media); } else { if (media < 7.0 && media >= 5.0) { printf("Sua média não alcancou o esperado, mas você ainda tem chances no exame %f.2\n", media); } else { printf("Infelizmente sua média não satisfez o minimo, você foi reprovado nesta matéria %f.2\n", media); } } } }
  9. Boite, Os números que vê são hexadecimais. Creio que isso não seja possível, pois este arquivo não é o código fonte do jogo. Maioria das vezes são protegidos!
  10. Creio que seja melhor você ir aos poucos, para depois ir a desafios. Tenta estudar essas partes separadas. while, std, etc... Faz um exercício envolvido cada objeto deste programa, ai depois você entenderá tudo isso ai.
  11. #include <stdio.h> #include <stdlib.h> int main(void) { int a = 0; int b = 1; for (int i = 1; i < 50; i = a + b){ b = a; a = i; printf("- %i ", i); } } O jeito mais simples que achei de fazer é este. Mas ele mostra o a sequencia até o numero que está na condição. No caso seria até o valor de fib menor que 50 Mas podemos fazer assim se quisermos saber até o N termo. #include <stdio.h> #include <stdlib.h> int main(void) { int x = 0; int a = 0; int b = 1; for (int i = 1; i < 10; i++){ x = a + b; b = a; a = x; printf("- %i ", x); } }
  12. #include <stdio.h> #include <stdlib.h> #define S_D 50; //Constante que irá subtrair 50 do denominador int main(void) { float denominador = 500; //valor inicial do denominador float soma = 0; //valores de soma e do denominador tem que ser flutuante for (int i = 2; i < 12; i++){ if (i%2 == 0){ soma = soma + (2/denominador); }else { soma = soma - (5/denominador); } denominador -= S_D; } printf("Soma = %f\n", soma); } Bom dia amigo, O meu deu certo quando coloquei o denominador como float. O resultado final é -0.13313 Verifica os dois programas e compara se está tudo ok. Espero ter ajudado, abraços.
  13. #include <stdio.h> #include <stdlib.h> #include <string.h> int main(void) { char frase[100] = "O aluno se matriculou!"; //char aux[100]; int aux = 0; int nt = 0; printf("Digite a frase\n"); //scanf("%s", frase); //gets(frase); //frase = "Aluno"; printf("%s", frase); int tamanho = strlen(frase); int aux_tamanho = tamanho; for (int i = 0; i < tamanho; i++) { //printf("\nvalor de i %i\n", i); if ((frase[i + 1] == 'l') && (frase[i + 2] == 'u') && (frase[i + 3] == 'n') && (frase[i + 4] == 'o')) { if (frase[i] == 'A') { frase[i] = 'E'; aux = 1; } if (frase[i] == 'a') { frase[i] = 'e'; aux = 1; } if (aux == 1) { int espaco = aux_tamanho - ((i + 4) + 1); //printf("\nEspaco = %i\n", espaco); nt = aux_tamanho + 4; for (int j = 0; j < espaco; j++) { frase[nt - 1] = frase[aux_tamanho - 1]; nt--; aux_tamanho--; } frase[i + 1] = 's'; frase[i + 2] = 't'; frase[i + 3] = 'u'; frase[i + 4] = 'd'; frase[i + 5] = 'a'; frase[i + 6] = 'n'; frase[i + 7] = 't'; frase[i + 8] = 'e'; } } } printf("\n%s", frase); int tamanho2 = strlen(frase); // printf("\n%i", tamanho2); } Aulas particulares online de programação > WhatsApp (85) 999273805
  14. No tabuleiro de xadrez, a casa na linha 1, coluna 1 (canto superior esquerdo) é sempre branca e as cores das casas se alternam entre branca e preta, de acordo com o padrão conhecido como... xadrez! Dessa forma, como o tabuleiro tradicional tem oito linhas e oito colunas, a casa na linha 8, coluna 8 (canto inferior direito) será também branca. Neste problema, entretanto, queremos saber a cor da casa no canto inferior direito de um tabuleiro com dimensões quaisquer:L linhas e C colunas. No exemplo da figura, para L = 6 eC = 9, a casa no canto inferior direito será preta! Resposta 1: #include <stdio.h> #include <stdlib.h> int main(void) { int L = 0; int C = 0; int aux = 1; printf("Digite o numero de linhas do tabuleiro:\n"); scanf("%i", &L); printf("Digite o numero de colunas do tabuleiro:\n"); scanf("%i", &C); int tabuleiro[L][C]; for (int i = 0; i < L; i++) { for (int j = 0; j < C; j++) { tabuleiro[i][j] = aux; aux = 1 - aux; } } for (int i = 0; i < L; i++) { for (int j = 0; j < C; j++) { printf("%i ", tabuleiro[i][j]); } printf("\n"); } printf("\nCasa inferior direita de cor = %i\n", tabuleiro[L-1][C-1]); } Resposta 2: #include <stdio.h> #include <stdlib.h> int main(void) { int L = 0; int C = 0; printf("Digite o numero de linhas do tabuleiro:\n"); scanf("%i", &L); printf("Digite o numero de colunas do tabuleiro:\n"); scanf("%i", &C); if (L%2 == C%2){ printf("A casa inferior direita é 1."); }else { printf("A casa inferior direita é 0."); } }
  15. Segue link com o caderno de perguntas: https://olimpiada.ic.unicamp.br/static/extras/obi2018/provas/ProvaOBI2018_f1pj.pdf Segue resposta em C : http://rextester.com/YVQ45070 #include <stdio.h> #include <stdlib.h> int main(void) { int N; int f_compradas; int repetidas = 0; int f_repetidas = 0; int f_n_repetidas = 0; int f_restantes = 0; printf("Qual o número máximo de figurinhas do album?\n"); scanf("%i", &N); int M[N]; printf("\nQuantidade de figuras compradas?\n"); scanf("%i", &f_compradas); for (int i = 0; i < f_compradas; i++) { printf("\nDigite o numero da figura:"); scanf("%i", &M[i]); } printf("Saiu do laço\n"); for (int i = 0; i < f_compradas - 1; i++) { for (int j = i + 1; j < f_compradas; j++) { if (M[ i ] == M[ j ]) { printf("Repetiu figura\n"); repetidas++; } } } f_n_repetidas = f_compradas - repetidas; f_restantes = N - f_n_repetidas; printf("\nQuantidade restante: %i\n", f_restantes); }