IC Basico
IC Basico
IC Basico
Conceitos Básicos
Por exemplo:
13
treze
XIII
10011010
❓❓❓
Atualmente, para representar qualquer número,
usamos a base 10, é o que chamamos de sistema
decimal.
0 1 2 ... 8 9
9000 + 500 + 60 + 2
E finalmente:
possibilidades.
11010011
211
etc...
Solução: 10111010
1.4 Código Hexadecimal
Resultado: 158
Fazendo: 158-144=14
1001 e 1110
1110 é igual a 8 + 4 + 2 = 14
9 E = 9E
0101010011011010
010011 e 011010
Em linguagem de assemblagem a mesma
instrução será representada por:
ADD A, B
Algoritmo:
Ex:
int n, p ;
float valor, x1, x2 ;
char resposta ;
int s ;
A=1;
B=A+3;
A=3;
a=5;
b=a+1;
a = 2;
Algoritmo:
- parênteses.
A←1
B←2
C←3
X←A+B*C
X←A*B+C
X ← A + C/B
X ← C/A + B
A←1
B←2
C←3
X←A+B*C
X ← (A + B) * C
X ← A + C/B
X ← (A + C)/B
Linguagem C:
Tipo int:
n+p
n-p
n*5
n*p
n+p/q
n+q/p
(n + q) / p
n+p%q
n+q%p
(n + q) % p
n+p/n+p
(n + p) / (n + p)
Cuidado:
Ex: 0.6235E11
Notação decimal:
Notação exponencial:
int n, p ;
float x ;
podemos escrever: n + x
int n, p ;
float x ;
n = 10 ;
p=7;
x = 2.5 ;
x+n%p
x+n/p
(x + n) / p
5. * n
(n + 1) / n
(n + 1.0) / n
Cuidado: se n é de tipo int e x de tipo float com
valor igual a 3,4, o comando de atribuição
seguinte vai envolver uma conversão de tipo:
n = x + 5.3 ;
int n1, n2 ;
float x, y ;
n1 = 15 ; n2 = 4 ;
x = n1 / n2 ;
y = n1 / n2 + 0.5
2.5 Expressões de tipo char
Algoritmo:
C=e
variáveis C, X : caracteres
C ← << e >>
X ←C
X←X+1
variáveis A, B : caracteres
char c1, c2 ;
c1 = `s' ;
c2 = c1 ;
`\\' : simbolo \
variaveis x, y, z : numericas
x←3
z←x+y
y←4
int x, y, z ;
x=3;
z=x+y;
y=4;
int n = 5 ;
float x = 5.25 ;
int n ;
float x ;
n=5;
x = 5.25 ;
Mais um pouco...
podemos escrever:
int n = 5, p, q = 10, v ;
3. Para comunicar com o programa : as instruções de
impressão e de leitura.
Algoritmo: Exemplo:
variáveis x, y : numéricas
x←1
y←5
escrever x, y
1 5
int n = 20 ;
printf ("total : %d", n) ;
Resultado:
total : 20
Exemplo:
int n = 10, p = 25 ;
printf ("numero : %d valor : %d", n, p) ;
Resultado:
numero : 10 valor : 25
%d é um código de formato
int n = 10 , p = 25 ;
printf ("a soma de %d e de %d é %d", n, p, n+p) ;
Resultado:
a soma de 10 e de 25 é 35
Resultado:
bom dia
Mais um pouco...
%d significa que o valor da variável deve ser
transformada do binário para o código decimal,
e o numero obtido deve ser imprimido na
forma de símbolos ASCII que representam o
valor decimal: tudo isso se chama de
formatação.
Tudo que fica dentro dos "..." constitua o que
chamamos de cadeia de caracteres (uma
simples sequencia de símbolos).
Tipo char: Exemplo:
int n = 15 ;
char c = 's' ;
printf ("numero : %d tipo : %c", n ,c) ;
Resultado:
numero : 15 tipo : s
float x = 1.23456e4 ;
printf("x not exp : %e, x not dec : %f", x, x) ;
Resultado:
printf ("%3d", n) ;
n= 20 ^20
n=3 ^^3
n= -5 ^-5
n = 2358 2358
n = -5200 -5200
printf ("%10f", x) ;
x = 1.2345 ^^1.234500
x = 1.2345E5 123450.000000
Precisão da impressão: Exemplo:
printf ("%10.3f", x) ;
x = 1.2345 ^^^^^1.235
x = 1.2345E3 ^^1234.500
x = 1.2345E7 12345000.000
printf ("%12.4e", x) ;
x = 1.2345 ^^1.2345e+00
x = 123.456789E8 ^^1.2346e+10
Pulo de linha na impressão: usar u caráter \n
Exemplo:
int n = 15 ;
char c ='s' ;
printf ("numero : %d\ntipo : %c", n, c) ;
Resultado:
numero : 15
tipo : s
3.2 Um primeiro programa
main()
{
instrução de declaração de variáveis
instruções executáveis
}
main()
{
float valor = 12.85 ;
float quadrado, cubo ;
int inter ;
quadrado = valor * valor ;
cubo = quadrado * valor ;
printf ("o valor %f tem por valor quadrado %f e
por valor cubico %f \n", valor, quadrado, cubo);
inter = cubo ;
printf ("a parte inteira do seu cubo é : %d",
inter);
}
Ex: editar, compilar e executar no CodeBlocks
Cuidado:
printf ("numero : %d
tipo : %c", n, c) ;
#include <stdio.h>
50 artigos S, de categoria B
12@
-1234@
+987@
^12@
^^^+987@
Tipo float: exemplo:
-25@
345@
+654@
-34.56@
2.@
4.0@
3e45@
1.25e-4@
Exemplo de programa:
main()
{
float valor ;
float quadrado, cubo ;
int inteiro ;
printf ("fornecer um valor real : ") ;
scanf ("%e" , &valor) ;
quadrado = valor * valor ;
cubo = quadrado * valor ;
printf ("o valor %f tem o valor quadrado %f e o
cubo %f \n",
valor, quadrado, cubo) ;
inteiro = cubo ;
printf ("o valor inteiro do cubo é : %d",
inteiro) ;
}
Resultado na tela:
int n, p ;
scanf ("%d%d", &n, &p) ;
123^456@
123^^^456@
^^^123^^^^456@
ou
123@
456@
ou
123^^@
^^^456^^^@
Cuidado!
se a gente entre:
15^^^341^^^67@
char c1 ;
scanf ("%c" , &c1) ;
char c1, c2 ;
scanf ("%c%c", &c1, &c2) ;
se a gente entre:
se a gente entre:
124@
g@ então n vale 124 e c vale g