LGON7
-
Posts
12 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por LGON7
-
-
Olá,
A solução é bem simples e pode ser usada exatamente como abaixo:
string inputTxt = "Este é um teste";
int i = inputTxt.IndexOf("teste");
string outputTxt = inputTxt.Substring(i);
Carlos Flavio Barreto Ferreira de Souza
Flexdoc Tecnologia
Amigo, obrigado pela ajuda. No caso eu não sei o tanto que é pra copiar, porque essa tag no meu programa é variável, o que eu sei é que preciso copiar o link do href e não será sempre o mesmo link, entendeu ?
-
Olá, alguém poderia me ajudar em como copiar uma determinada string dentro de uma string? por exemplo, essa string: <a target="_blank" href="http://www.google.com" title="Google">
Eu quero pegar somente depois do href=, que no caso seria "http://www.google.com" e salvar em uma variável.
-
Alguém poderia me ajudar?
-
Olá, eu fiz esse programa e está aparecendo informação a mais quando apresento os números pares e impares.
Até aparecem os números pares e impares, o problema é que aparecem outros números também(Acredito que seja o endereço da memoria). Alguém poderia me ajudar ? Agradeço!!!
#include <stdio.h>
#include <conio.c>
#define MIN_NUM 1
#define MAX_NUM 20
//Struct
struct Vetor
{
int nro[MAX_NUM];
};
float leValidaFloat(char titulo[], char msgErro[], float valorMin, float valorMax);
char leValidaSN(char titulo[],char msgErro[],char opcao1, char opcao2);
void apresentaParImpar(int *par,int *impar,int cont);
void separaParImpar(struct Vetor *numeros,int cont);
int main(void)
{
// Declaracoes
struct Vetor numeros;
char desejaContinuar;
int cont=0;
// Instrucoes
do
{
numeros.nro[cont]=leValidaFloat("Informe o numero","Invalido, informe novamente",0,9999);
cont++;
desejaContinuar=leValidaSN("Deseja adicionar outras notas?[S/N]","Invalido informe novamente[S-Sim/N-Nao]",'S','N');
}while(desejaContinuar=='S' && cont<=20);
separaParImpar(&numeros,cont);
getch();
return 0;
}
//Objetivo: ler e validar float
//Parâmetros: titulo, msgErro, valorMin, valorMax
//Retorno: float validado
void apresentaParImpar(int *par,int *impar,int cont)
{
int contador;
// printf("NUMEROS %d\n",numeros->nro[contador]);
printf("PAR %d\n",*par);
printf("IMPAR %d\n",*impar);
}
//Objetivo: ler e validar float
//Parâmetros: titulo, msgErro, valorMin, valorMax
//Retorno: float validado
void separaParImpar(struct Vetor *numeros,int cont)
{
int contador;
int par[20],impar[20];
for(contador=0;contador<=cont-1;contador++)
{
if(numeros->nro[contador]%2==0)
{
par[contador]=numeros->nro[contador];
}
if(numeros->nro[contador]%2!=0)
{
impar[contador]=numeros->nro[contador];
}
apresentaParImpar(&par[contador],&impar[contador],cont);
}
}
//Funcao
//Objetivo: Ler e validar uma string
//Parametros: ref a titulo,ref a msg de erro,valor minimo e maximo do numero.
//Retorno: string validada
char leValidaSN(char titulo[],char msgErro[],char opcao1, char opcao2)
{
char opcao;
do
{
printf("%s\n",titulo);
opcao=getch();
opcao=toupper(opcao);
if(opcao!=opcao1 && opcao!=opcao2)
{
printf("%s\n",msgErro);
}
}while(opcao!=opcao1 && opcao!=opcao2);
return opcao;
}
//Objetivo: ler e validar float
//Parâmetros: titulo, msgErro, valorMin, valorMax
//Retorno: float validado
float leValidaFloat(char titulo[], char msgErro[], float valorMin, float valorMax)
{
float real;
int ret;
do{
printf("%s",titulo);
fflush(stdin);
ret = scanf("%f",ℜ);
fflush(stdin);
if(real<valorMin || real>valorMax || ret ==0){
system("cls");
printf("%s\n",msgErro);
}
}while(real<valorMin || real>valorMax || ret ==0);
return real;
}
-
Segue o código
#include <stdio.h>#include <time.h>int main(){ time_t t; t = time(NULL); printf("%s\n", asctime(localtime(&t))); return 0;}
Obrigado!!!
-
use a função asctime de time.h
como faço para aparecer a data e hora? não faço ideia...
-
Olá, alguém poderia me ensinar como faço para pegar a data e hora diretamente do computador na linguagem C?
Obrigado!
-
Pode trocar as chamadas das funções para essas que passei acima.
Os dois únicos erro de lógica que encontrei, foram:
1) Na função "main()", passar a chamada da função "obtemLocalIdadeMenorMedia()" para dentro do "for" e trocar o parâmetro "qtdePessoas" para "contador2".
printf("Tabela de pessoas que possuem idade menor que a media das idades:\n"); printf("SEXO IDADE LOCAL\n"); for ( contador2 = 0; contador2 <= qtdePessoas-1; contador2++ ) if ( idades[contador2] < mediaIdades ) { obtemLocalIdadeMenorMedia(idades,localIdadeMenorMedia,localViagem, mediaIdades, contador2); printf("%4c %5d %s\n", sexo[contador2], idades[contador2], localIdadeMenorMedia); }
2) Na função "obtemLocalIdadeMenorMedia()", remover o tratamento para validar idades inferiores a média (pois ela já está inclusa no "for" do item 1) e remover o "for", pois a posição está sendo passada por parâmetro:
void obtemLocalIdadeMenorMedia(int idades[500], char localIdadeMenorMedia[100], char localViagem[500], float mediaIdades, int posicaoCadastro){ if ( localViagem[posicaoCadastro] == 'S' ) sprintf(localIdadeMenorMedia, "ASIA"); else if ( localViagem[posicaoCadastro] == 'E' ) sprintf(localIdadeMenorMedia, "EUROPA"); else if ( localViagem[posicaoCadastro] == 'A' ) sprintf(localIdadeMenorMedia, "AMERICA DO NORTE"); else sprintf(localIdadeMenorMedia, "NUNCA SAIU DO PAIS"); }
@ScreenBlack Não colocando os parâmetros que você me passou não da certo... é que não aprendi esse "const" e preciso fazer sem isso...Obrigado mais uma vez
@ScreenBlack AEEE valeu, consegui agora, obrigado
-
Fiz o teste aqui e funcionou.
PS: precisei ajustar as chamadas de funções, pois os compiladores mais recentes não aceitam o tipo de nomenclatura que você está usando.
void obtemLocalIdadeMenorMedia(int idades[500], char localIdadeMenorMedia[100], char localViagem[500], float mediaIdades, int qtdePessoas);int leValidaInteiro(const char titulo[100], const char msgErro[100], int valorMin, int valorMax);char leValidaCaracter(const char titulo[100], const char msgErro[100], char opcao1, char opcao2);char leValidaLocalViagem(const char titulo[100], const char msgErro[100]);
@ScreenBlack Eu uso o DevC, preciso fazer nessa nomenclatura ai... Teria como me ajudar?
Obrigado pela atenção
-
Não aparecem todos porque está limitado para mostrar apenas os cadastros com idades inferiores à média.
@ScreenBlack Então, eu quero que apareçam todos as classificações inferiores a média...
-
Olá, neste programa o único erro é que não está aparecendo todas as classificações do vetor(ASIA,EUROPA...), acredito(tenho quase certeza) que seja no sprintf.
Alguém poderia me ajudar?
Obrigado;
Síntese do programa para ajudar:
algoritmo pesquisaViagens;
// Síntese
// Objetivo: Auxiliar em uma pesquisa sobre viagens
// Entrada : Sexo, idade, local da viagem
// Saída :Em uma tabela o sexo, idade e local da última viagem por extenso das pessoas
que possuem idade menor que a média,quantidade de pessoas que visitou cada um destes continentes e a quantidade que não saiu do brasil
// Valores de Entrada: M, 10, A
// M, 5 , S
// F, 5, A
// Valores de Saida:
SEXO IDADE LOCAL
M 5 ASIA
F 5 AMERICA DO NORTE
Quantidade de pessoas que visitaram a Asia:1
Quantidade de pessoas que visitaram a Europa:0
Quantidade de pessoas que visitaram a America Do Norte:2
Quantidade de pessoas que Nunca sairam do Brasil:0
#include <stdio.h>
#include <conio.c>
void obtemLocalIdadeMenorMedia(int idades[],char localIdadeMenorMedia[],char localViagem[], float mediaIdades, int qtdePessoas);
int leValidaInteiro(char titulo[], char msgErro[], int valorMin, int valorMax);
char leValidaCaracter(char titulo[], char msgErro[], char opcao1, char opcao2);
char leValidaLocalViagem(char titulo[], char msgErro[]);
void visaoFinal(int somaViagensEuropa,int somaViagensAsia,int somaViagensAmericaDoNorte,int somaNuncaSaiuPais);
int main(void)
{
// Declaracoes
int idades[500],contador,somaIdades,qtdePessoas, idadeMenorMedia[500],contador2,contador3,somaViagensEuropa,somaViagensAsia,somaViagensAmericaDoNorte,somaNuncaSaiuPais;
char sexo[500], localViagem[500],desejaContinuar, sexoIdadeMenorMedia[500];
char localIdadeMenorMedia[100];
float mediaIdades;
// Instrucoes
contador=0;
somaIdades=0;
qtdePessoas=0;
mediaIdades=0;
somaViagensEuropa=0;
somaViagensAsia=0;
somaViagensAmericaDoNorte=0;
somaNuncaSaiuPais=0;
do
{
idades[contador]=leValidaInteiro("Informe a idade:","Idade invalida, informe uma idade entre 2 e 150",2,150);
somaIdades=somaIdades+idades[contador];
sexo[contador]=leValidaCaracter("Informe o sexo[M-MASCULINO/F-FEMININO]:","Sexo invalido",'M','F');
localViagem[contador]=leValidaLocalViagem("Informe o local da viagem de acordo com o menu de opções:","Local invalido, informe novamente");
if(localViagem[contador]=='S')
{
somaViagensAsia=somaViagensAsia+1;
}
else
{
if(localViagem[contador]=='E')
{
somaViagensEuropa=somaViagensEuropa+1;
}
else
{
if(localViagem[contador]=='A')
{
somaViagensAmericaDoNorte=somaViagensAmericaDoNorte+1;
}
else
{
somaNuncaSaiuPais=somaNuncaSaiuPais+1;
}
}
}
printf("Digite qualquer tecla para continuar ou 'N' para mostrar o resultado:\n");
desejaContinuar=getch();
desejaContinuar=toupper(desejaContinuar);
clrscr();
contador=contador+1;
qtdePessoas=contador;
mediaIdades=somaIdades/qtdePessoas;
}while(desejaContinuar!='N' && contador<=2);
obtemLocalIdadeMenorMedia(idades,localIdadeMenorMedia,localViagem, mediaIdades, qtdePessoas);
printf("Tabela de pessoas que possuem idade menor que a media das idades:\n");
printf("IDADE SEXO LOCAL\n");
for(contador2=0; contador2<=contador-1;contador2++)
{
if(idades[contador2]<mediaIdades)
{
printf("%5d %c %s\n",idades[contador2],sexo[contador2],localIdadeMenorMedia);
}
}
visaoFinal(somaViagensEuropa,somaViagensAsia,somaViagensAmericaDoNorte,somaNuncaSaiuPais);
getch();
return 0;
}
//Objetivo: ler local viagem
//Parâmetros: idades, localIdadeMenorMedia, localViagem, mediaIdades, qtdePessoas
//Retorno:nenhum
void obtemLocalIdadeMenorMedia(int idades[],char localIdadeMenorMedia[],char localViagem[], float mediaIdades, int qtdePessoas)
{
int contador2;
for(contador2=0; contador2<=qtdePessoas-1;contador2++)
{
if(idades[contador2]<mediaIdades)
{
if(localViagem[contador2]=='S')
{
sprintf(localIdadeMenorMedia,"ASIA\n");
}
else
{
if(localViagem[contador2]=='E')
{
sprintf(localIdadeMenorMedia,"EUROPA\n");
}
else
{
if(localViagem[contador2]=='A')
{
sprintf(localIdadeMenorMedia,"AMERICA DO NORTE\n");
}
else
{
sprintf(localIdadeMenorMedia,"NUNCA SAIU DO PAIS\n");
}
}
}
}
}
}
//Objetivo: ler e validar inteiro
//Parâmetros:titulo msgErro, valorMin, valorMax
//Retorno: numero inteiro validado
int leValidaInteiro(char titulo[], char msgErro[], int valorMin, int valorMax)
{
int numero;
do
{
printf("%s\n",titulo);
scanf("%d",&numero);
if(numero<valorMin || numero>valorMax)
{
printf("%s\n",msgErro);
}
}while(numero<valorMin || numero>valorMax);
return numero;
}
//Objetivo: ler e validar caracter
//Parâmetros: titulo, msgErro, opcao1, opcao2
//Retorno: caracter validado
char leValidaCaracter(char titulo[], char msgErro[], char opcao1, char opcao2)
{
char letra;
do
{
printf("%s\n",titulo);
letra=getch();
letra=toupper(letra);
if(letra!=opcao1 && letra!=opcao2)
{
printf("%s\n",msgErro);
}
}while(letra!=opcao1 && letra!=opcao2);
return letra;
}
//Objetivo:ler e validar local viagem
//Parâmetros: titulo, msgErro
//Retorno: local viagem validado
char leValidaLocalViagem(char titulo[], char msgErro[])
{
char letra;
do
{
printf("MENU DE VIAGEM\n");
printf("E - EUROPA\n");
printf("S - ASIA\n");
printf("A - AMERICA DO NORTE\n");
printf("N - NUNCA SAIU DO PAIS\n");
printf("%s\n",titulo);
letra=getch();
letra=toupper(letra);
if(letra!='E' && letra!='S' && letra!='A' && letra!='N')
{
printf("%s\n",msgErro);
}
}while(letra!='E' && letra!='S' && letra!='A' && letra!='N');
return letra;
}
//Objetivo:Quantidade de pessoas que viajaram para os locais
//Parâmetros:somaViagensEuropa,somaViagensAsia,somaViagensAmericaDoNorte,somaNuncaSaiuPais
//Retorno:nenhum
void visaoFinal(int somaViagensEuropa,int somaViagensAsia,int somaViagensAmericaDoNorte,int somaNuncaSaiuPais)
{
printf("Quantidade de pessoas que visitaram a Asia:%d\n", somaViagensAsia);
printf("Quantidade de pessoas que visitaram a Europa:%d\n", somaViagensEuropa);
printf("Quantidade de pessoas que visitaram a America Do Norte:%d\n", somaViagensAmericaDoNorte);
printf("Quantidade de pessoas que Nunca sairam do Brasil :%d\n", somaNuncaSaiuPais);
}
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
Programação dinâmica - matriz
em Programação - outros
Postado
Olá, alguém poderia me ajudar neste exercício ?
Agradeço pela ajuda!