-
Posts
18 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Gustavo Beck
-
-
Estou tentando criar um método construtor Aluno, mas está dando erro na linha public Aluno inteira, o que fazer?
package exaula6; public class RegistroAcademico { private String nome; private int RA; private int idade; private int classe; private String curso; public Aluno(String nome, int RA, int idade, int classe, String curso){ this.nome = nome; this.RA = RA; this.idade = idade; this.classe = classe; this.curso = curso; } public String retornadados(){ return this.nome + " " + this.RA + " " + this.idade + " " + this.classe + " " + this.curso; } }
-
Está dando um erro no meu programa que é a base para criar um jogo da Forca, mas eu não consigo arrumar, e esse erro só acontece quando eu junto o main,forca.h e forca.c em um projeto .cbp, quando eu executo os 3 arquivos sozinhos funciona, mas preciso entregar para trabalho e preciso que funcione com o arquivo .cbp de projeto. Alguem consegue me ajudar a resolver? Esse é o erro: "error: dereferencing pointer to incomplete type 'NoSecreto {aka struct noSecreto}' "
Main:#include <stdio.h> #include <stdlib.h> #include <string.h> #include "forca.h" void exibe() { printf("Desenvolvido por:\nGustavo Felipe Beck 18133"); printf("\nLucas Miranda 18567\n\n"); } int main() { exibe(); NoSecreto * lstSecreta = inicializaListaSecreta(); NoSecreto * sorteada; NoSecreto * usadas = inicializaListaSecreta(); lstSecreta = carregaListaArquivo(lstSecreta,"palavras.dat"); imprimeListaSecreta(lstSecreta); do{ system("cls"); exibe(); imprimeListaSecreta(lstSecreta); sorteada= sorteiaPalavra(lstSecreta,usadas); if(sorteada!=NULL){ printf("%s\n", sorteada->palavra); lstSecreta = retiraUmElemento(lstSecreta,sorteada->palavra); }else{ printf("Nao existe palavra disponivel!\n\n"); } }while(getchar()!='f'); NoL * letras = inicializaListaSecreta(); return 0; }
Forca.c:
#include <stdio.h> #include <string.h> #include "forca.h" struct noSecreto { int status; char palavra[31]; char assunto[100]; int num; struct noSecreto * prox; }; struct noLetras { char letra; int estado; struct noSecreto * proximo; }; NoSecreto * inicializaListaSecreta() { return NULL; } NoSecreto * inserePalavraSecreta(NoSecreto * l,char word[31],char subject[100]) { NoSecreto * novo; novo = (NoSecreto *) malloc(sizeof(NoSecreto)); novo->status = 0; strcpy(novo->assunto,subject); strcpy(novo->palavra,word); novo->prox = l; l = novo; return l; } void imprimeListaSecreta(NoSecreto *l) { NoSecreto * p; for (p = l; p!=NULL; p=p->prox) { printf("%0d | %30s | %30s | %d\n", p->status,p->palavra,p->assunto,p->num); } } NoSecreto * carregaListaArquivo(NoSecreto * l, char nomeArq[255]) { const char ch[2]=";"; char * token; int status; char palavra[31]; char assunto[101]; char * linha[1024]; int n=0; FILE * fWords; fWords = fopen(nomeArq,"r"); if(fWords==NULL){ printf("Falha ao acessar base de dados!!!\n\n"); exit(0); } while(fgets(linha,1024,fWords)) { token = strtok(linha,ch); if(token!=NULL) { strcpy(palavra,token); } token=strtok(NULL,ch); if(token!=NULL) { strcpy(assunto,token); } l = inserePalavraSecreta(l,palavra, assunto); l->num=n; n++; } fclose(fWords); return l; } int quantos(NoSecreto * l) { NoSecreto * p; int y=0; for (p = l; p!=NULL; p=p->prox) { y++; } return y; } int temPalavraNaoUsada(NoSecreto *l) { NoSecreto *p; for(p=l;p!=NULL;p=p->prox){ if(p->status==0) return 1; } return 0; } NoSecreto * sorteiaPalavra(NoSecreto *l,NoSecreto *l2) { int tam = quantos(l); int aleatorio=0; int tentativas = 0; NoSecreto * p; while(temPalavraNaoUsada(l)){ aleatorio = geraAleatorio(tam); p = retornaPalavraPos(l,aleatorio); if(p->status==0){ { p->status = 1; return p; l2 = inserePalavraSecreta(p,p->palavra,p->assunto); } } } return NULL; } NoSecreto * retornaPalavraPos(NoSecreto *l, int pos) { int n=1; NoSecreto *p; for(p=l; p!=NULL; p=p->prox) { if(n==pos) break; n++; } return p; } int geraAleatorio(int maximo) { time_t t; int n=0; srand((unsigned) time(&t)); n = (rand() % maximo)+1; return n; } NoSecreto * retiraUmElemento(NoSecreto * l, char palavra[31]) { NoSecreto * ant = NULL; NoSecreto * p = l; while(p != NULL && p->palavra != palavra) { ant = p; p = p->prox; } if(ant == NULL) { l = p->prox; } else { ant->prox = p->prox; } free(p); return l; }
Forca.h:
#include <stdio.h> #include <stdlib.h> #ifndef FORCA_H_INCLUDED #define FORCA_H_INCLUDED typedef struct noSecreto NoSecreto; typedef struct noLetras NoL; NoSecreto * inicializaListaSecreta(); NoSecreto * carregaListaArquivo(NoSecreto * l, char nomeArq[255]); void imprimeListaSecreta(NoSecreto *l); NoSecreto * inserePalavraSecreta(NoSecreto * l,char word[31],char subject [100]); int temPalavraNaoUsada(NoSecreto *l); NoSecreto * sorteiaPalavra(NoSecreto *l,NoSecreto * l2); int quantos(NoSecreto * l); NoL * crialetras(NoSecreto * l); NoSecreto * retornaPalavraPos(NoSecreto *l, int pos); int geraAleatorio(int maximo); NoSecreto* retiraUmElemento(NoSecreto * l, char palavra[31]); #endif // FORCA_H_INCLUDED
- 1
-
@devair1010 Mas já ta com o include
- 1
-
Alguém poderia me ajudar com este erro, a função cria que vai ser usada no main da erro
//Gustavo Beck 18133 e Lucas Miranda 18567 #include <stdlib.h> #include "fila.h" typedef struct no { int senha; struct no* prox; }; typedef struct no No; typedef struct fila { No* ini; No* fim; }; Fila* cria (void) { Fila* f = (Fila*) malloc(sizeof(Fila)); f->ini = f->fim = NULL; return f; } /* função auxiliar: insere no fim */ No* ins_fim (No* fim, int v) { No* p = (No*) malloc(sizeof(No)); p->senha = v; p->prox = NULL; if (fim != NULL) /* verifica se lista não estava vazia */ fim->prox = p; return p; } /* função auxiliar: retira do início */ No* ret_ini (No* ini) { No* p = ini->prox; free(ini); return p; } void insere (Fila* f, int v) { f->fim = ins_fim(f->fim,v); if (f->ini==NULL) /* fila antes vazia? */ f->ini = f->fim; } int retira (Fila* f) { int v; if (vazia(f)) { printf("Fila vazia.\n"); /* aborta programa */ } v = f->ini->senha; f->ini = ret_ini(f->ini); if (f->ini == NULL) /* fila ficou vazia? */ f->fim = NULL; return v; } int vazia (Fila* f) { return (f->ini==NULL); } void libera (Fila* f) { No* q = f->ini; while (q!=NULL) { No* t = q->prox; free(q); q = t; } free(f); } /* imprime: versão com lista */ void imprimeM (Fila* f) { No* q; for (q=f->ini; q!=NULL; q=q->prox) printf("M%d\n",q->senha); } void imprimeE (Fila* f) { No* q; for (q=f->ini; q!=NULL; q=q->prox) printf("E%d\n",q->senha); } int checafila (Fila* f, Fila* g) { No* q; No* p; int e=0; int d=0; for (q=f->ini; q!=NULL; q=q->prox) { e++; } for(p=g->ini;p!=NULL;p=p->prox) { d++; } if(e==0 && d==0) return 0; else return 1; }
- 1
-
Estou fazendo um programa para armazenar nome, ra e media dos alunos e ver se ele foi aprovado, tudo está indo certo, mas ao escrever o nome, ele armazena e usa para o mesmo nome para os 3 alunos, não pedindo para declarar de novo, o que eu faço para conseguir declarar 3 nomes diferentes mesmo que esses sejam com mais de uma palavra?
#include <stdio.h> #include <stdlib.h> struct alunos { int ra; char nome[30]; float media; }; struct alunos aluno; int main() { for(int i = 1; i<=3;i++) { printf("Digite o nome do aluno %d: ",i); scanf("%[^\n]s",aluno.nome); printf("Digite o RA do aluno %d: ",i); scanf("%d",&aluno.ra); printf("Digite a media do aluno %d: ",i); scanf("%f",&aluno.media); if(aluno.media>=6) { printf("\nAluno %d: %s , com RA: %d , foi aprovado com a media %.2f \n",i, aluno.nome,aluno.ra,aluno.media); } else { printf("\nAluno %d: %s , com RA: %d , foi reprovado com a media %.2f \n",i, aluno.nome,aluno.ra,aluno.media); } } }
- 1
-
#include <stdio.h> #include <stdlib.h> int multiplicarDiagonal(int **m,int *n,int *j) { printf("Matriz: \n"); for (int i=0; i<n; i++) { for (int x=0; x<j; x++) { printf("%d, ", m[i][x]); } } printf("\nDigite um numero: "); int n1; scanf("%d",&n1); for (int i = 0; i<n;i++) { m[i][i] == m[i][i]*n1; } printf("Matriz modificada: \n"); for (int i=0; i<n; i++) { for (int x=0; x<j; x++) { printf("%d, ", m[i][x]); } } return 0; } int main() { int m[3][3] = {{1,2,3,4}, {1,2,3,4}, {1,2,3,4}, {1,2,3,4}}; multiplicarDiagonal(m,3,3); }
Queria saber no que eu estou errando na impressão da matriz
-
Como eu faço para colocar a data assim por extenso dentro do label? Só sei colocar a data por números
-
@allanxd Mais uma coisa, você sabe o comando para encontrar o arquivo sem digitar o endereço inteiro? E obrigado, me salvou muito
-
char fName[100]; int op; scanf("%d",&op); if(op == 1) fName[100] = "C:\\Users\\gubec\\OneDrive\\Área de Trabalho\\teste\\SalaAloisio.csv"; else if(op==2) fName[100] = "C:\\Users\\gubec\\OneDrive\\Área de Trabalho\\teste\\Sala2.csv"; else if(op==3) fName[100] = "C:\\Users\\gubec\\OneDrive\\Área de Trabalho\\teste\\Sala3.csv";
agora está certo?
-
@allanxd Como eu faço isso?
-
Queria saber qual o erro está acontecendo aqui, pois o fName não adquire nenhum valor e não consigo abrir o arquivo.
-
Vou na de 2 fans mesmo, obrigado@Jasiel @Sergio NewSonic
-
@Jasiel @Sergio NewSonic A placa eu sei que cabe, eu só estava com receio pois não achei nenhum review dessa placa na internet, acho que é modelo novo, e estava em dúvida se a temperatura ia ser melhor na de 2 fans mesmo.
-
19 minutos atrás, Sergio NewSonic disse:
Seu gabinete é torre média ou maior? Se sim pega a versão com 2 fans.
Desculpa, mas não sei o que é torre média kkkk. Mas meu gabinete é esse aqui PCYes Java@Sergio NewSonic
-
Tem duas placas de vídeo gtx 1060 6gb em promoção na Kabum por R$1129 reais, só que uma tem 1 fan e outra 2, pelo que eu vi tem as mesmas especificações também, mas queria saber se a dual Fan vai ser melhor. Qual eu devo comprar?
OBS: Tenho uma fonte evga 430w
EVGA GTX 1060 6GB ou essa Zotac GTX 1060 6GB
-
6 minutos atrás, Atretador disse:
@Gustavo Beck Quanto que vai sair essa 1060 3GB? Normalmente da para pegar RX580 no mesmo preco
Na promoção eu vi por uns 930
adicionado 0 minutos depois34 minutos atrás, Elder Nauvirth disse:@Gustavo Beck Se sua fonte está bem cuidada e não foi usada com estabilizador ou algo do tipo, ainda é considerável manter.
Dá para manter até mesmo se a gpu pedir 1 conector de energia e a fonte tiver tal conector.
Se já foi usada com estabilizador é melhor trocar a fonte e se desfazer do estabilizador também.
Não usei nenhum estabilizador e limpo ela uma vez por mês, só que ela já tem 2 anos
-
Olá, tenho uma fonte EVGA 430w com Certificado 80 Plus e PFC Ativo e queria saber se ela consegue rodar tranquilamente uma GTX 1060 3gb e um Ryzen 5 1600? Ou era melhor ir de 1050 ti para não ter que trocar a fonte.
Outros componentes do PC, 2x4 ram hyperx Fury white, um HD de 1tb e 1 SSD de 120, um monitor de 21.5 polegadas e um de 15 polegadas. Agradeço a ajuda.
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais
Preciso salvar uma ArrayList dentro de um arquivo txt
em Java/Android SDK
Postado
Estou fazendo uma Agenda telefonica, e preciso abrir um arquivo de texto para salvar um Arraylist dentro e poder modificar ele também. Estou usando a classe executavel AgendaTelefonica:
E uma classe com o metodos executaveis:
Como eu faço para ler e salvar a ArrayList dentro de um arquivo txt?