Escolar Documentos
Profissional Documentos
Cultura Documentos
Apostila C
Apostila C
Nomes de variveis Escolher nomes significativos; Apenas 32 caracteres do nome da varivel so considerados. Pode-se usar quantos caracteres forem necessrios, sendo o primeiro, obrigatoriamente, uma letra ou o caracter _.
Tipos de variveis Tipo int: Representam inteiros. long int aumenta a capacidade de armazenamento do int. unsigned int faz o programa aceitar apenas valores positivos, economizando memria. Regras: Nmero positivo no necessrio o sinal de +. Nmeros negativos usa-se o sinal de -. Pontos decimais no podem ser usados quando escrevemos inteiros. Vrgulas no podem ser usadas para escrever inteiros. Tipo float: Representao de nmeros reais. Sinais: como em int. Valores devem ser expressos com o uso de ponto. Ex : 10.34 Tipo double: Semelhante ao float, porm com mais memria. Tipo char: Representao de caracteres. Incluem letras do alfabeto (maisculas e minsculas), dgitos de 0 9 e smbolos especiais, tais como #, &, !, +, -, *, /, etc. Devem ser escritos entre apstrofos.
Linguagem de Programao
String : No uma varivel. Representa conjunto de caracteres. Aparece entre aspas. EX: letra=A; INICIALIZANDO VARIVEIS possvel combinar uma declarao de varivel com o operador de atribuio para que uma varivel tenha um valor inicial no instante da sus declarao. Exemplo: #include<iostream.h> #include<conio.h> void main( ) { int evento=5; //cria a varivel do tipo inteiro que recebe o valor 5 char corrida=C; //varivel do tipo caracter que recebe o valor C float tempo = 27.25; //varivel real que recebe 27.25 cout<<\nTempo: <<tempo; cout<<\nCorrida: <<corrida; cout<<\nCompetio: <<evento; getch( ); }
2 - OPERADORES
Atribuio: = Ex: x=3; x=y=3; Aritmticos: +, -, *, /, %. OBS: / (diviso inteira) % (resto da diviso mdulo) Ex: int result, resto; result = 5/2; //o contedo de result ser 2 (parte inteira) resto=5%2; // o contedo de resto ser 1 (resto da diviso)
PRECEDNCIA DE OPERADORES Forma de avaliao da expresso. int x=5, y=3, z=1, n; n=z + y*x; //O valor de n ser 16 O operador * tem precedncia maior que o operador +. O uso de parnteses pode mudar essa ordem. Expresses entre parnteses so avaliadas primeiro.
2
Linguagem de Programao
n = (z + y) * x; //O valor de n ser 20 Os operadores + e - tm a mesma precedncia e a regra de associatividade da esquerda para a direita. Os operadores *, / e % tm a mesma precedncia e associatividade da esquerda para a direita. n = z % y / x //o resto da diviso de z por y ser dividido por x. ORDEM DE AVALIAO Parnteses *, /, % +, -
OPERADOR DE INCREMENTO E DECREMENTO X= X + 1; X++; X--; (ps-fixados) ++X, --X; (pr-fixados) EX: a = x + y; a = x++; a=8 x=3 e y=5 a=3 e x=4 // a atribuio precede o incremento mas no a soma a = ++y; a=6 e y=6 //incrementa o y e atribui ao a. (a = y = y+1)
OPERADORES ARITMTICOS DE ATRIBUIO += *= /= -= %= ( exemplo: x+=6 x = x+6) ( exemplo: x*=6 x = x*6) ( exemplo: x/=6 x = x/6) ( exemplo: x-=6 x = x-6) ( exemplo: x%=6 x = x%6)
OPERADORES RELACIONAIS OPERADOR == > < >= <= != SIGNIFICADO Igual a Maior que Menor que Maior ou igual que Menor ou igual que Diferente
Linguagem de Programao
OPERADORES LGICOS
OPERADOR && || !
SIGNIFICADO E OU NO
?:
valor = (a>b)?a:b; //se for verdadeira, pega o valor anterior aos dois pontos e armazena na varivel valor Exemplo: Resposta = (a+b>c)?a:b; a = 3; b=2 c=5 Analisando a expresso, veremos que o seu resultado ser FALSO. Logo, o valor armazenado em resposta ser 2.
1a linha: inclui um arquivo de biblioteca (conjunto de funes existentes no ambiente Borland C++) 2a linha: comentrio 3a linha: declarao da funo principal 4a linha: incio da funo principal 5a linha: determinando uma varivel 6a linha: atribuio do valor 22 para a varivel idade. 7a linha: impresso de uma mensagem e o contedo da varivel idade. 8a linha: fim da funo principal.
Linguagem de Programao
Linguagem de Programao
O COMANDO IF-ELSE Neste caso temos dois blocos de aes (instrues)> o primeiro deles est associado ao comando if e o segundo, ao comando else. if (condio) { instruo 1; instruo 2; instruo n; } else { instruo 7; instruo 8; instruo n; }
O COMANDO IF-ELSE-IF Sintaxe if (condio 1) { instruo 1; instruo 2; instruo n; } else if (condio 2) { instruo 7; instruo 8; instruo n; } else { instruo; }
IFs ANINHADOS Um if aninhado uma declarao if que colocada dentro de um outro if ou um else.
Linguagem de Programao
SWITCH Sintaxe: switch ( varivel) { case constante 1; instruo1; instruo2; break; case constante 2; instruo; default instruo; instruo;
H trs coisas importantes sobre o comando switch: 1. Ele difere do if, pois s testa igualdades. 2. Nunca, dentro do mesmo switch, duas constantes case podero ter valores iguais. 3. Uma declarao switch corresponde a um encadeamento if-else-if, porm mais eficiente. No switch, uma varivel sucessivamente testada contra uma lista de inteiros ou constantes caracter. Quando uma igualdade encontrada, a instruo ou seqncia de instrues associada ao case da constante executada. O corpo de cada case composto por um nmero qualquer de instrues. Geralmente a ltima instruo o break. O comando break causa a sada imediata de todo o corpo do switch. Na falta do comando break, todas as instrues aps o case escolhido sero executadas, mesmo as que pertenam ao case seguinte. A declarao default executada se nenhuma igualdade for encontrada. Nota: o default opcional.
Linguagem de Programao
Exemplo: programa que executa operaes matemticas #include<iostream.h> #include<conio.h> void main ( ) { float n1, n2; char opcao; cout<<\nDigite numero operador numero; cin>>n1>>opcao|>>n2; switch (opcao) { case +: cout<<(n1+n2); break; case -: cout<<(n1-n2); break; case *: cout<<(n1*n2); break; case /: cout<<(n1/n2); break; default: cout<<\nOperador desconhecido!; } getch(); }
6 - COMANDOS DE REPETIO
Os comandos de repetio, tambm chamados de laos, permitem que um conjunto de instrues seja repetido enquanto uma certa condio estiver sendo satisfeita. O lao for geralmente usado quando queremos repetir algo, um nmero fixo de vezes. Sintaxe for (inicializao; condio de teste ; incremento) { Instruo; Instruo2; Instruo n; }
Linguagem de Programao
A inicializao uma instruo de atribuio e sempre executada uma nica vez, antes do lao ser iniciado. O teste uma condio avaliada como verdadeira ou falsa que controla o lao. Esta expresso avaliada a cada volta no lao. Quando o teste se torna falso, o lao encerrado. O incremento define a maneira pela qual a varivel ser alterada a cada volta no lao. executada sempre, imediatamente aps cada volta no lao. Exemplo: #include<iostream.h> void main ( ) { for (int i=1; i,=20; i++) { cout<<\n<<i; } }
FLEXIBILIDADE DO LAO FOR 1 O OPERADOR VRGULA A vrgula possibilita que dentro de um lao for estejam contidas vrias instrues separadas por vrgulas. Um par de expresses separadas por vrgula avaliada da esquerda para a direita. for ( int i=0; i<10; i++) for (int i=0, j=0; (i+j)<100 ; i++, j++) cout<<(i+j); for (int i=0, j=10; i<10; i++, j++) 2 USANDO CARACTERES A varivel do lao for pode ser do tipo char. Exemplo: for (char ch=a; ch<=z; ch++) cout<<\nO codigo ASC de<<ch<<e<<int(ch); 3 OMITINDO EXPRESSES NO LAO FOR Qualquer uma das trs expresses de um lao for pode ser omitida, embora os ponto-e-vrgulas devam permanecer. Se a expresso de inicializao ou a de incremento forem omitidas, sero simplesmente desconsideradas. Se a condio de teste no estiver presente, ser considerada permanentemente verdadeira.
Linguagem de Programao
O LAO WHILE
Um lao while apropriado em situaes em que o lao pode ser terminado inesperadamente, por condies desenvolvidas dentro do lao. Sintaxe: while (expresso teste) { instruo; instruo; }
Se o teste for verdadeiro, o lao while executado uma vez e a expresso de teste avaliada novamente. Este ciclo de teste e execuo repetido at que o teste se torne falso. O corpo do while pode ser uma nica instruo terminada por ponto-evirgula, ou vrias instrues entre chaves ou, ainda, nenhuma instruo, mantendo o ponto-e-vrgula. Em geral, o lao while pode substituir um lao for da seguinte forma:
for (int i=0; i<20; i++) cout<<i; int i=0; while (i<20) { cout<<i; i++; }
LAO DO-WHILE bastante similar ao while e utilizado em situaes em que necessrio executar o corpo do lao uma primeira vez e, depois avaliar a expresso ou teste e criar um ciclo repetido. Sintaxe: do { instruo; instruo; }while (condio-teste);
10
Linguagem de Programao
7 COMPARAES
PORTUGOL = < > / div resto E OU NO se seno seno se enquanto para inteiro real caracter C++ = == != < > <= >= / / % && || ! if else else if while for int float char
11