Escolar Documentos
Profissional Documentos
Cultura Documentos
Dados Estática
Disciplina:Programação e
Sistemas de Informação
DESENVOLVIDO POR
CÉSAR PINTO
E
BRUNO MACHADO
2
Introdução
Com este trabalho queremos fazer inovações no 1 tgpsi e achamos que
conseguimos , apresentamos as funções strings , vetores e uma grande
surpresa
3
Strings
Na programação de computadores, uma cadeia de caracteres ou string é
uma sequência de caracteres, geralmente utilizada para representar
palavras, frases ou textos de um programa.
/*
typedef struct{
int dia, mes, ano;
}DataNas;
typedef struct{
DataNas dataNas;
int idade;
char sexo;
char nome[100];
}Pessoa;
int main() {
int i;
Pessoa pessoas[3];
return 0;
O Comando typedef
O comando typedef permite ao programador definir um novo nome para
um determinado tipo.
#include <stdio.h>
typedef struct tipo_endereco
{
char rua [50];
int numero;
char bairro [20];
char cidade [30];
char sigla_estado [3];
long int CEP;
} TEndereco;
typedef struct ficha_pessoal
{
char nome [50];
long int telefone;
TEndereco endereco;
}TFicha;
void main(void)
{
TFicha *ex;
...
}
Bidimensionais (Matrizes)
10
#include iostream
Esta biblioteca serve para definir um "espaço de nomes", ou namespace. Um
namespace permite a definição de estruturas, estruturas, classes, funções,
constantes, etc, que estarão vinculadas a ele.
#include windows.h
#include time.h
Esta biblioteca contém um arquivo cabeçalho que fornece protótipos para
funções, macros e definição de tipos da biblioteca padrão da linguagem de
programação C para manipulação de datas e horários de modo padrão.
Esta função irá para as posições x,y da nossa matriz, vamos utilizá-la para
desenhar as 4 paredes do nosso jogo, para isso iremos utilizar laços for(), e
para desenhá-las vamos utilizar a tabela ASCII. Nosso código ficará assim:
13
O que fizemos foi criar um laço, e dentro dele utilizar a função mgotoxy()
que percorre por toda a matriz, desenhando nela com caracteres especiais,
no caso usamos o de número 219, que representa a “|”, e para desenhar as 4
paredes, fizemos uma por vez, através de 4 laços, a primeira percorre de 0
até X(18), a segunda de X(50) até 0, a terceira de 50 até X(18), e a quarta de
X(51, para o cursor ficar fora das paredes) até 18.
Com isto, criamos toda a lógica que vai fazer a cobra se movimentar pela
tela, mas ainda não funciona. O que fizemos primeiro foi criar um laço,
dentro dele esta variável ‘tecla’ que declaramos sendo do tipo char e
contendo a letra ‘a’, enquanto ela for ‘a’ o laço continua. Em seguida,
usamos o conectivo E NÃO FOR (&&!) com a função kbhit()
srand(time(NULL));
mx=(rand()%49)+1;
my=(rand()%17)+1;
Agora, vamos desenhar a maçã, usando a tabela ASCII mais uma vez.
mgotoxy(mx,my);
printf("%c",1);
O jogo está quase pronto, vamos fazer o código de quando a cobra passa
if(mx==cx[0]&&my==cy[0])
{ t++;
mx=(rand()%25)+1;
my=(rand()%17)+1;
Para terminar a lógica, vamos fazer o fim do jogo. Se a cobra cx[0]; cy[0]
if(mx==cx[0]&&my==cy[0])
{ t++;
mx=(rand()%25)+1;
my=(rand()%17)+1;
controlar a função Sleep(), que deve diminuir a cada vez que a cobra pegar
A variável ‘velo’ irá controlar nossa função Sleep(), começando com 100 e
diminuindo seu valor a cada vez que a maçã for pega, assim a velocidade
if(mx==cx[0]&&my==cy[0])
{ t++;
pontos++;
mx=(rand()%25)+1;
my=(rand()%17)+1;
velo-=5;
velo2+=5;
para isto, vamos usar a função mgotoxy() para andar por nossa matriz, e
mgotoxy(55,10);
textcolor(MAGENTA);
mgotoxy(55,3);
mgotoxy(3,22);
textcolor(11);
Sleep(velo);
Agora, por fim, vamos criar uma mensagem de game over, para que o
system("cls");
system("pause");
textcolor(14);
textcolor(13);
Conclusão
COM ESTE TRABALHO SUPERAMOS QUALQUER META DECLARADA PELA A
PROFESSORA E CRIAMOS ALGO INOVADOR PARA O 1 TGPSI
WEBGRAFIA
https://www.inf.pucrs.br/~flash/lapro2ec/aulas/aula_strings.html
http://mtm.ufsc.br/~azeredo/cursoC/aulas/cb60.html
https://wagnergaspar.com/como-criar-um-vetor-array-unidimensional-de-
struct/
https://www.sanfoundry.com/c-program-implement-strpbrk-function/
http://mtm.ufsc.br/~azeredo/cursoC/aulas/cb60.html
https://www.geeksforgeeks.org/strpbrk-in-c/
https://linuxhint.com/pass-string-function-c-language/