sexta-feira, 21 de novembro de 2014

Espaço das profissões no IF Goiano – Câmpus Rio Verde


O espaço das profissões foi um projeto da professora Heyde que juntamente com os alunos do instituto procurou levar informações dos cursos do instituto federal para toda a comunidade Rio-verdense. O espaço das profissões ocorreu durante o dia todo nos dias 22 e 23 de outubro e como não podia faltar, os alunos do projeto da Olimpíada Brasileira de Informática estavam mostrando para toda a comunidade como funciona a OBI e como é prazeroso participar dessa competição, que tem como objetivo principal encontrar novos talentos em programação de computadores, sendo a programação a principal habilidade dos cursos relacionados a informática.


sexta-feira, 31 de outubro de 2014

Code.org - Programação para iniciantes

Algum tempo atrás estava navegando pela internet e me deparei com este site: http://learn.code.org/, achei bastante interessante e resolvi explorá-lo. Logo que comecei a frequentar o site já resolvi vários exercícios do mesmo. No site existem vários jogos, onde você muda de fase e a cada nível descobre novas ferramentas da programação, como por exemplo: ler, repetir, executar, se, senão, entre outras. No total são 20 desafios divididos em 20 fases cada, onde utilizam os personagens de desenhos animados (angry birds, plants versus zumbi, etc).
O Code.org transmite o conteúdo básico de lógica de programação com exercícios viciantes que ensinam da melhor forma possível. Recomendo a utilização do site principalmente para crianças e adolescentes do ensino fundamental que são iniciantes em programação.





“There are only 10 types of people in the world: Those who understand binary and those who don’t.”

sexta-feira, 24 de outubro de 2014

Biblioteca string.h

Biblioteca <string.h>
Como utilizar as principais funções
        A biblioteca string.h foi feita para facilitar o manuseio de string, tendo como suas principais funções a:
·       strlen (a função strlen, retorna um inteiro com dizendo quantos caracteres tem na string).
·        strcpy (a função strcpy copia uma string para outra string).
·        strcmp (esta função compara 2 string e retorna um inteiro. Se este inteiro for 0 quer dizer que as strings são iguais, se for negativo é porque a primeira e maior que a segunda e se for positivo é porque a segunda é maior que a primeira).
·         strcat (a strcat concatena 2 strings).

Como usá las
Para que as seguintes funções funcione  adicione a biblioteca string.h
#include <string.h>”.

        Strlen
Para usarmos a strlen faça a seguinte função:

int i;
char str[tam];
scanf(" %[^\n]",str);
i=strlen(str);
printf("%i\n",i);

pronto. A variável “i” recebera o número de caracteres que tem a sua string só que o próximo código ira fazer isso e é bem fácil de eu entender.

int i;
char str[tam];
scanf(" %[^\n]",str);
for(i=0;i<tam;i++){
   if(str[i]=='\0') break;
}
printf("%i",i);

este é uma código eficiente que simula a strlen.

Strcpy
Para poder usar a strcpy faça o seguinte:

char str1[tam],str2[tam];
scanf(“ %[^\n]",str1);
strcpy(str2,str1);
printf("%s\n",str2);

Veja que lemos a “str1” mas imprimimos a “str2”, isso porque a “str1” foi jogada na “str2”. Agora vamos reproduzir um código que faça algo parecido.

int i;
char str1[tam],str2[tam];
scanf(" %[^\n]",str1);
for(i=0;i<tam;i++){
str2[i]=str1[i];
}
printf("%s\n",str2);

Este código também faz o mesmo processo que a strcpy só que tera que ter uma lógica melhor para compreende-lo.

Strcmp
Para usarmos a strcmp faça:

int i;
char str1[tam],str2[tam];
scanf(“ % [^\n]",str1);
scanf(“  %[^\n]",str2);
i=strcmp(str1,str2);
if(i==0){
printf(“São iguais\n”);
}else(i!=0){
printf(“Não são iguais\n”);
}

Por mais que isso seja só um pouco do que a strcmp possa fazer, esse será o seu principal uso. Mas vamos fazer um código que simule isso.

int i,j;
int o=0,c=0;
char str1[tam],str2[tam];
scanf(" %[^\n]",str1);
scanf(" %[^\n]",str2);
for(i=0;str1[i]!='\0';i++){
c++;
}
for(j=0;str1[j]!='\0';j++){
o++;
}
if(o==c){
printf("São iguais\n");
}else if(o!=c){
printf("Não são iguais\n");
}

Observe que temos dois for para contar quantos caracteres tem na em cada string e depois comparamos ela, caso seja igual ele retornara “São iguais”, caso não ele retornara “Não são iguais”.

Strcat
E por ultimo usaremos a strcat para concatenarmos duas strings. Vamos usar da seguinte forma:

int i; char str1[tam],str2[tam]; scanf(" %s",str1); scanf(" %s",str2); strcat(str1," "); strcat(str1,str2); printf("%s\n",str1);

Observe que o código ficou bem simples mas o que faremos a seguir pode ter uma lógica mais difícil de compreender mas que pode ser mais eficiente que o código anterior.

int i,j;
char str1[tam],str2[tam],str3[tam+tam];
scanf(" %[^\n]",str1);
scanf(" %[^\n]",str2);
for(i=0;str1[i]!='\0';i++){
str3[i]=str1[i];
}
str3[i]=' ';
i++;
for(j=0;str2[j]!='\0';j++){
str3[i]=str2[j];
i++;
}
str3[i]='\0';
printf("%s\n",str3);

bem podemos ver que neste caso criamos a string “str3” para mantermos a integridade do valor da “str1 e str2”, lembrando que a cada string a mais a ser concatenada temos que aumentar o espaço da string que recebera as strings.

Bem pessoal ficamos por aqui com esta dica e até mais.
Lembre se “Os sonhadores são os salvadores do mundo” - James Allen.

sexta-feira, 3 de outubro de 2014

Strings sem dor de cabeça

Strings na linguagem C

Para entendermos como funciona uma string de caracteres, na linguagem c, é muito importante compreender como os caracteres são representados pelo computador, como a linguagem c é uma linguagem compilada e não interpretada temos que trabalhar com strings pensando na forma que o computador C a interpreta. A linguagem C considera os caracteres como números que vão de 0 até 127, enumerados segundo a tabela ASCII, assim:

char exemplo = 61;
printf("61 em C é : %c\n",exemplo );

O programa mostraria : 61 em C é igual a : a

Talvez você quererá atribuir números a um elemento char, então existe 2 formas de fazer isso:

    char exemplo = '1';   OU char exemplo = 31;

em ambos os casos mostram o valor 1.

Mais com o aumento dos nosso programas trabalhar com caracteres únicos tornar-se inviável, então podemos criar um vetor de caracteres denominados strings que nada mais é que um espaço de memoria que contem vários caracteres em fila, como por exemplo:

Athos                                      André                   peixe                     Cachorro

Então se pensarmos um pouco veremos que string nada mais é do que caracteres agrupados e que termina com o caractere  '\0', indicando o final da string. No exemplo abaixo declararmos uma string de 10 caracteres + um caractere terminador '\0', pois o primeiro índice inicia em 0.

char string[10];

No segundo exemplo o compilador sobrescreve o U pois o terminador '\0' é sempre colocado.

#include <stdio.h>

int main () {

char string[1]="EU";

printf("%s\n",string);

return 0;
}

Uma string possui índices e é com esse índices que iremos trabalhar: como por exemplo o meu nome.

0-F
1-e
2-r
3-n
           4-a           
5-n
6-d
7-o
  8-'\0'

Então se quisermos ler uma string temos que fazer o seguinte:

char string[ //defina o tamanho aqui];

int i;

while(i<//tamanho da string){
scanf(" %[^ \n]",string[i] );
}

Mais se quisermos ler varias strings  temos que criar uma matriz de caractere, e para isso precisamos de de dois índices, onde o primeiro representa a linha e o segundo representa a coluna:

                                                                          0123456789
0 fernando'\0'
1       athos'\0'
2       andré'\0'
3    leticia '\0' 

Como exemplo podemos fazer o seguinte:

int i,j;
char string [//aqui vc coloca o numero de palavras que sua matriz tem ] [// aqui vai o maior numero de carceres que vai na string];

for(i=0;i<linhas;i++){ scanf("%[^\n]",string[i]); // %[^\n] lê a string até que se aperte a tecla enter }

bons estudos!

sexta-feira, 19 de setembro de 2014

Plataforma de Estudo para a OBI

Para aquele que procura um site de estudos para a OBI, recomendo o URI Online Judge, nele você encontrará vários problemas pelo qual deve ser respondido em "C" ou "Java".
O URI ajuda tanto iniciantes quanto os mais avançados além de criar uma leve competição com amigos e outras pessoas, por meio de Rank ou a porcentagem de quantos problemas resolvidos.
Já aqueles que não conhece uma linguagem de programação e quer aprende de maneira fácil, há vários canais que ensinam a programar, um dos canais é o eXcript  que não é tão conhecido mas que ensinas várias linguagens de programação, dentre elas o "C" e o "Java".
Bom, agora é só estudar para participar da próxima OBI.

Bons Estudos!

sábado, 13 de setembro de 2014

Segunda Fase OBI - 2014 em Rio Verde - GO

O Instituto Federal Goiano – Câmpus Rio Verde, sediou no dia 30 de agosto a segunda fase da XVI Olimpíada Brasileira de Informática (OBI 2014). Em Rio Verde, cinco instituições de ensino qualificaram alunos para a competição. A prova teve duração de 2 horas, não havendo qualquer tipo de imprevisto. O Professor responsável, André da Cunha Ribeiro, juntamente com seus colaboradores, Athos José de Araújo e Letícia Caroline Sousa Santos, aplicaram a prova e fiscalizaram a mesma para que tudo ocorresse dentro das orientações da OBI.



"Grandes obras são executadas não pela força mas pela perseverança"  Samuel Johnson.

quarta-feira, 27 de agosto de 2014

IF Goiano – Câmpus Rio Verde na OBI

A Sociedade Brasileira de Computação (SBC) anuncia a realização da Olimpíada Brasileira de Informática (OBI), uma competição organizada nos moldes das outras olimpíadas científicas brasileiras, como Matemática, Física e Astronomia. O objetivo da OBI é despertar nos alunos o interesse por uma ciência importante na formação básica hoje em dia (no caso, ciência da computação), através de uma atividade que envolve desafio, engenhosidade e uma saudável dose de competição. A organização da OBI está cargo do Instituto de Computação da UNICAMP.
A OBI está organizada em três modalidades:
  1. Modalidade Iniciação:
  • Nível 1, para alunos até sétimo ano do Ensino Fundamental e
  • Nível 2, para alunos até nono ano do Ensino Fundamental.
  1. Modalidade Programação:
  • Nível Júnior, para alunos do ensino fundamental,
  • Nível 1, para alunos até o segundo ano do ensino médio e
  • Nível 2, para alunos até o terceiro ano do ensino médio.
  1. Modalidade Universitária:
  • Para alunos que estejam cursando, pela primeira vez, o primeiro ano de um curso de graduação.

Em todas as modalidades os alunos competem individualmente. Cada aluno poderá estar inscrito em apenas uma modalidade. Maiores informações podem ser encontrada no site: http://olimpiada.ic.unicamp.br/.

Todos os participantes receberão certificados de participação. Os melhores colocados de cada modalidade receberão ainda medalhas de ouro, prata e bronze. Os melhores colocados das modalidades Iniciação e Programação serão convidados para uma semana de cursos no Instituto de Computação da UNICAMP. Os cursos serão ministrados no Instituto de Computação da UNICAMP, e acontecerão em datas divulgadas oportunamente. Para os alunos da modalidade Programação nível 2, haverá, durante o Curso de Programação Avançada, uma seleção para escolher os quatro alunos integrantes da equipe brasileira na International Olympiad in Informatics ou somente IOI. A IOI é um evento já tradicional que conta com a participação de mais de 70 países.


Com a intenção de incentivar a participação dos alunos de Rio Verde e região criamos o projeto de extensão denotado IF Goiano – Câmpus Rio Verde na OBI. Como resultado do projeto no dia 24/05/2014 participamos da 1º fase da OBI de 2014.
Alunos que participaram da 1ª fase da OBI 2014 na modalidade programação nível 1.
Neste espaço vamos registrar experiências e dicas para todos que desejam participar da OBI.