Você está na página 1de 5

Maria Ins Vasconcellos Furtado

Programao de Computadores II

TABELA DE CONVERSO DE PASCAL PARA C


ESTRUTURA BSICA DE UM PROGRAMA
Pascal program uses ... begin ... seu cdigo ... end. C /* comentario */ #include ... int main( ) { ...seu cdigo... return (0); } C (outra opo) /* comentario */ #include ... void main( ) { ...seu cdigo... }

USO DE BIBLIOTECAS Pascal uses CRT; Chamada biblioteca padro C #include < stdio.h > #include "agua.i"

interface ....; biblioteca do usurio no subdiretrio de trabalho

FUNES DAS BIBLIOTECAS MAIS USADAS Nome stdio.h conio.h ctype.h stdlib.h math.h string.h dos.h graphics.h Uso geral standard input output entrada e saida padro console input output teclado e monitor character type manuseio de caracteres standard library diversas utilidades mathematics operaes matemticas strings manuseio de strings disk operating system recursos do SO graphics uso de tela grafica (ambiente DOS) Funes mais usadas printf( ), scanf( ), ... gets( ), puts( ), ... atoi( ), atof( ), atol( ), ... comandos para uso de arquivos. gotoxy (x, y), clrscr( ), clreol( ), delline( ), getch( ), puch( ), ... toupper( ), tolower( ), isalpha(), isdigit(), ... strtod( ), strtol( ), abort( ), execl( ), exit( ), system( ), max(x,y), min(x,y), qsort( ), ran( ), random( ), srand( ), ... pow( x , y ), exp( ), sqrt( ), log( ), log10( ), sin( ) , asin( ), sinh( ), ceil( ), floor( ), abs( ), labs( ), modf( ), fmod( ), ... strcmp(palavra1, palavra2), strcpy(palavra1, palavra2), ... sound( ); delay( ); nosound( ); ... initgraph( ), closegraph( ), detectgraph( ), setcolor( ), setbkground( ), moveto(), lineto( ), outext( ), ...

DELIMITADORES Pascal (* *) ou { } ; , := begin ... end ( ... ) Funo delimitadores de comentrio separar comandos e terminar declaraes separar identificadores e parmetros atribuio de valor delimita blocos de instrues delimita teste de condio C /* */ ; , = { ... } ( ... )

Maria Ins Vasconcellos Furtado

Programao de Computadores II

OPERADORES DE COMPARAO Pascal = <> < > <= >= Funo termo esquerda igual ao termo direita termo esquerda diferente do termo direita menor, maior menor ou igual maior ou igual DECLARAES Pascal var const record typedef Funo declarao de variveis declarao de constantes declarao de estruturas ou tipos definio de estruturas ou tipos TIPOS DE DADOS NUMRICOS Pascal shortint integer longint Pascal real double extended Inteiros -128 a +127 -32.768 a +32.767 -2.147.483.648 a +2.147.483.647 Nmeros de Ponto Flutuante 2,9*10(-39) a 1,7*10(38) (6 dgitos significativos) (pascal) 3,4*10(-38) a 3,4*10(38) (6 dgitos significativos) (c) 5*10(-324) a 1,7*10(324) (15-16 dgitos significativos) (pascal) 1,7*10(-308) a 1,7*10(308) (10-15 dgitos significativos) (c) C short int long C float double C no h necessidade const struct enum C == != < > <= >=

3,4*10(-4932) a 1,1*10(4932) (19-20 dgitos significativos) (pascal) long double 1,7*10(-308) a 1,7*10(308) (18 dgitos significativos) (c)

TIPOS DE DADOS ALFANUMRICOS Pascal char string Funo um caracter C char

corrente de caracteres char

FORMATO PARA AS VARIVEIS Pascal Funo C

no h

"%c"character "%s"string "%i"ou "%d" inteiro declarao de formato de variveis "%ld" long "%f" float "%lf"double COMANDOS MAIS FREQUENTES

Maria Ins Vasconcellos Furtado

Programao de Computadores II

Pascal read; write; gotoxy(x,y);

Funo l um ou mais valores de um arquivo para uma ou mais variveis retorna caracteres gerados o cursor movido para (x,y) sendo que: x varia entre 1 e 79 (colunas) y varia entre 1 e 24 (linhas) limpa a tela corrente; o cursor movido para (1,1) (canto superior esquerdo da tela. l um caractere do teclado (qualquer) sem apresent-lo na tela (bloco) bloco de instrues {bloco}

C scanf( ); printf( ); gotoxy(x,y);

clrscr; readkey; begin instrues; end;

clrscr ( ); getch ( ); { instrues; }

COMANDOS DE LAOS DE DECISO Pascal for (k:=1 to k<=n) do (bloco); Pascal if (condio) then (bloco 1) else (bloco 2;); Pascal while (condio) do (bloco); for executa um comando repetidamente, indicando um aumento na varivel de controle if testa uma condio, se verdadeira executa o comando subordinado then, caso contrrio, executa o comando else while repete uma srie de comandos at a condio tornar-se falsa C for (k=0 ;k<=n-1 ; k++) {bloco} C if (condio) {bloco1;} else {bloco2;} C while (condio) {bloco}

Pascal repeat (bloco) until ( ); Pascal

do repete uma srie de comandos at a condio tornar-se falsa, ( diferente do comando anterior pois executa pelo menos uma vez) switch do {bloco} while ( );

C switch (escolha) {case opo: {bloco1; break;} case opo: {bloco2; break;{ case opo: {bloco3; break;} default: msg_erro( ); }

case (escolha) of opo: (bloco1); opo: (bloco2); opo: (bloco3); else opo_invlida; end;

selecionar uma de vrias aes, dependendo do resultado de um teste

Maria Ins Vasconcellos Furtado

Programao de Computadores II

PRECEDNCIA DE OPERADORES Pascal () negao multiplicao diviso mdulo adio subtrao igual diferente maior (igual) menor (igual) Precedncias 1 2 3 C () negao multiplicao diviso mdulo adio subtrao igual diferente maior (igual) menor (igual)

OPERADORES ARITMTICOS Pascal + * div / mod Funo adio subtrao multiplicao diviso inteira diviso real resto da diviso expresso como inteiro (mdulo) C + * / / %

OPERADORES LGICOS Consideraes sobre Verdadeiro ou Falso Pascal C

TRUE = verdadeiro 0 = falso FALSE = falso Qualquer outro valor = verdadeiro Pascal (()E()) ( (1) e (1) ) da (1) ( (1) e (0) ) da (0) ( (0) e (1) ) da (0) ( (0) e (0) ) da (0) caso as expresses sejam verdadeiras retorna 1 caso a expresso esquerda seja falsa (0) no avalia a segunda parte e retorna 0. ( ( ) OU ( ) ) ( (1) ou (1) ) da (1) ( (1) ou (0) ) da (1) ( (0) ou (1) ) da (1) ( (0) ou (0) ) da (0) caso uma das expresses seja verdadeira retorna 1 se a expresso esquerda for verdadeira retorna 1 ele no avalia a segunda parte, caso contrrio retorna 0. PONTEIROS C

( ( ) and ( ) )

( ( ) && ( ) )

Pascal

( ( ) or ( ) )

( ( ) || ( ) )

Maria Ins Vasconcellos Furtado

Programao de Computadores II

Pascal ^nome

Funo dado

C *nome

^nome referncia ao dado na memria &nome EXEMPLO SIMPLES Pascal program exemplo; uses crt; begin var a,b,c,d: real; resp,s,n: char; resp:='S'; while Resp:='S' do begin clrscr; write('Somatria de 3 nmeros'); write('Digite o primeiro nmero'); readln(a); write('Digite o segundo nmero'); readln(b); write('Digite o terceiro nmero'); readln(c); d:=a+b+c; C /* programa exemplo */ #include < stdio.h > #include < conio.h > #include < ctype.h > void main( ) { float a,b,c,d; char resp; do { clrscr ( ); printf("Somatria de 3 nmeros"); printf("Digite o primeiro nmero "); scanf("%f",&a); printf("Digite o segundo nmero"); scanf("%f",&b); printf("Digite o terceiro nmero"); scanf("%f",&c); d=a+b+c;

write('A soma dos trs nmeros : ',d) ; printf("A soma dos trs nmeros : %f ",d) ; write('Continua (S/N) ?'); readln(resp); end; end. printf("Continua (S/N) ?"); resp=toupper(getch( )); } while (resp=='S'); }

Observaes importantes para converter programas C for DOS em programas C for Windows. Talvez seja necessrio incluir novas bibliotecas: conio.h se usar clrscr(); ctype.h se usar toupper(); dos.h se usar sound(), delay() e nosound(); (no garantido que funcione!). O comando getch( ) no necessrio no final do programa, pode-se exclu-lo. Em vez disso, informe o usurio para fechar a janela aps rodar o programa (clicando no X). Inclua o comando return(0) ao final do programa, antes da ltima chave! Ou use a opo void main ( )

Você também pode gostar