ATPS: Dois problemas para tratar funções simples
Seminário: ATPS: Dois problemas para tratar funções simples. Pesquise 862.000+ trabalhos acadêmicosPor: tonn • 30/11/2014 • Seminário • 1.628 Palavras (7 Páginas) • 299 Visualizações
Dois problemas para tratar funções simples;
Analisar string.
analisa(){
int n;
char cont;
char nome[1000];
printf("\ndigite uma frase:");
gets(nome);
for(n=0 ;nome[n]!='\0';n++);
printf("\nA frase %s tem %d caractere",nome,n);
}
Par e impar.
parimpar(){
int n;
printf("digite um numero:");
scanf("%d",&n);
if(n%2==0){
printf("%d he par!",n);
}else
printf("%d he impar!",n);
}
Dois problemas para tratar funções com passagem de parâmetro por valor;
Calcular a media ponderada de um aluno.
float med_pond(float n1,float n2){
return((n1*0.4)+(n2*0.6));
}
void main(){
float a,b;
printf("\n Digite duas notas");
scanf ("%f %f",&a,&b);
printf("\n A media he %f",med_pond(a,b));}
Conversor
float conv(float f)
{
return((f-32)/1.8);
}
main()
{
float f,c;
printf("\n Digite o grau em Fahrenheit ");
scanf("%f",&f);
c=conv(f);
printf(" O resultado he %2.f C",c);
}
Dois problemas para tratar funções com passagem de parâmetro por referencia;
Conta dígitos.
int conta_caracter(char texto[100]){
int aux;
for(aux=0;texto[aux]!='\0';aux++)
{}
return(aux);
}
int procura_digito(char txt[100],char find){
int p=0,cont;
for(cont=0;txt[cont]!='\0';cont++){
if(txt[cont]==find)
p++;
}
return(p);
}
Cálculo de IMC.
Float imc (float p,float a){
return(result=(peso)/(altura*altura));
}
ETAPA 3
PASSO 1
Leitura:
Ponteiros são variáveis que recebem endereço de outras variáveis do mesmo tipo
Variáveis ponteiros são definidas pelo caractere ‘*’(asterisco) antes do nome da variável ex: *pont. O ‘*’ tem valor significativo na linguagem além de definir um ponteiro ele indica “o conteúdo do endereço apontado pelo ponteiro”. Essa é a forma correta de atribuir um endereço ao ponteiro caso 1: se a variável for simples (o ponteiro deve ser declarado com o caractere ‘*’ antes do nome, e tem que ser do mesmo tipo da variável).
Mas para fazer a atribuição do endereço não precisa colocar o ‘*’, coloca-se o ponteiro sinal de atribuição’=’ & e a variável.
Ex: int *pont;
Int x;
Pont=&x;
Caso 2: Quando a variável é vetor (o ponteiro deve ser declarado com o caractere ‘*’ antes do nome,e tem que ser do mesmo tipo da variável).
Mas para fazer a atribuição do endereço, existe duas maneiras 1º nome do ponteiro sinal de atribuição’=’&nome do vetor[posição]; nesse caso o ponteiro apontara o índice escolhido no exemplo o índice 3;
Char vet[10];
Char *pont;
Ex: pont=&vet[3];
2º maneira nome do ponteiro sinal de atribuição‘=’nome do vetor, desse modo o ponteiro apontara o índice 0 do vetor;
PASSO 2.1
Ponteiros, um dos recursos mais poderosos da linguagem de programação C.
Os ponteiros permitem programas simular chamadas por referência e criar e manipular estruturas dinâmicas de dados, IE, estruturas de dados que podem crescer e diminuir, como as listas encadeadas, filas, pilhas e árvores.
Os ponteiros são variáveis que contêm endereços de memória como valores. Normalmente, uma variável faz uma referência direta a um valor específico. Um ponteiro, por outro lado, contém um endereço de uma variável que contém um valor específico. Sob esse ponto de vista, um nome de variável faz uma referência direta a um valor, e um ponteiro faz referência indireta a um valor. Diz-se que fazer referência a um valor por meio de um ponteiro é fazer uma referência indireta.
Podemos atribuir valor ao ponteiro declarado. Para isto é necessário saber que existem dois operadores unitários que são utilizados com os ponteiros. O primeiro é o operador (*) através dele é possível retornar o valor da variável que está localizada no ponteiro. E o segundo é o operador (&) que retorna o endereço de memória que está
...