<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Gabriel de Oliveira</title>
    <description>The latest articles on DEV Community by Gabriel de Oliveira (@aleixo_gabrie1).</description>
    <link>https://dev.to/aleixo_gabrie1</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1269766%2F099f030d-12ba-41e5-82b5-dde48beccd85.jpg</url>
      <title>DEV Community: Gabriel de Oliveira</title>
      <link>https://dev.to/aleixo_gabrie1</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aleixo_gabrie1"/>
    <language>en</language>
    <item>
      <title>Portfólio - Aula 08</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Wed, 10 Apr 2024 22:18:33 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-08-2o93</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-08-2o93</guid>
      <description>&lt;p&gt;Nesta aula conversamos sobre conceitos de paradigmas funcionais no âmbito matemático. Segue abaixo programa que dado um número retorna a tabuada e segue até que o usuário digite o número 0 para sair do programa.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#include &amp;lt;stdio.h&amp;gt;

void tabuada(int num) {
    printf("\nTabuada do %d:\n", num);
    for (int i = 1; i &amp;lt;= 10; i++) {
        int result = num * i;
        printf("%d x %d = %d\n", num, i, result);
    }
}

int main() {
    int num;

    do {
        printf("Digite um número ou 0 para sair: ");
        scanf("%d", &amp;amp;num);

        if (num != 0) {
            tabuada(num);
        }
    } while (num != 0);

    return 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute o código aqui: &lt;a href="https://onlinegdb.com/XiA3aSNdA"&gt;https://onlinegdb.com/XiA3aSNdA&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programming</category>
    </item>
    <item>
      <title>Portfólio - Aula 07</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Tue, 05 Mar 2024 23:46:38 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-07-4l17</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-07-4l17</guid>
      <description>&lt;p&gt;A aula 7 foi sobre processamento de &lt;strong&gt;Strings&lt;/strong&gt;. A seguir alguns exemplos de programas de manipulação de Strings:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Indexação:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;frase = "UFOPA BRASIL"
f = frase[3]
print(f)

last = frase[-4]
print(last)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execução do código aqui:&lt;a href="https://onlinegdb.com/YFBtz6Jer"&gt;https://onlinegdb.com/YFBtz6Jer&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Programa de manipulação de Strings:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        String s = "UFOPA";
        String t = "Gabriel Aleixo de Oliveira";
        String a = "2021005138";

        if (s.equals(t)) {
            System.out.println("As Strings são iguais.");
        } else {
            System.out.println("As Strings são diferentes.\n");
        }

        System.out.println(s.equals(a));//Sempre usar equals para comparar Strings.
        System.out.println(s.concat(" ") + t +(" ") + a);
        System.out.println(s.replace('O', '#'));// Troca um caractere por outro
        System.out.println(t.replace('i', '*'));
        System.out.println(t.toUpperCase());//Tudo em maiusculo
        System.out.println(t.toLowerCase());//Tudo em minusculo
        System.out.println(t.toLowerCase().indexOf("x"));//Retorna a posição da String
        System.out.println(a.length());//Comprimento da String

    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute o código aqui: &lt;a href="https://onlinegdb.com/f7ReXfteH"&gt;https://onlinegdb.com/f7ReXfteH&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Portfólio - Aula 06</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Tue, 05 Mar 2024 23:28:37 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-06-4j0n</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-06-4j0n</guid>
      <description>&lt;p&gt;Nessa aula foram apresentados os conceitos de &lt;strong&gt;estrutura de dados&lt;/strong&gt; e proposto para fazer um programa de inserção e exclusão de elementos.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;stdlib.h&amp;gt;


struct noArv {
    int cpf;
    struct noArv* esq;
    struct noArv* dir;
};

typedef struct noArv Arv;

void imprimeEmOrdem (Arv* a);

Arv* insere (Arv* a, int cpf);
Arv* retira (Arv* r, int cpf);


void imprimeEmOrdem(Arv* a) {
    if (a != NULL) {
        imprimeEmOrdem(a-&amp;gt;esq);
        printf("%d ", a-&amp;gt;cpf);
        imprimeEmOrdem(a-&amp;gt;dir);
    }
}

Arv* insere( Arv* a, int cpf) {
    if (a == NULL) {
        a = (Arv*)malloc(sizeof(Arv));
        a-&amp;gt;cpf = cpf;
        a-&amp;gt;esq = NULL;
        a-&amp;gt;dir = NULL;
    } else if (cpf &amp;lt; a-&amp;gt;cpf) {
        a-&amp;gt;esq = insere (a-&amp;gt;esq, cpf);
    } else if (cpf &amp;gt; a-&amp;gt;cpf) {
        a-&amp;gt;dir = insere(a-&amp;gt;dir, cpf);
    }
    return a;
}

Arv* retira (Arv* r, int cpf){
    if (r==NULL) {
        return NULL;
    } else if (r-&amp;gt;cpf &amp;gt; cpf) {
        r-&amp;gt;esq = retira(r-&amp;gt;esq, cpf);
    } else if (r-&amp;gt; cpf &amp;lt; cpf) {
        r-&amp;gt;dir = retira(r-&amp;gt;dir, cpf);
    } else {
        if (r-&amp;gt;esq == NULL &amp;amp;&amp;amp; r-&amp;gt;dir == NULL) {
            free (r);
            r = NULL;
        } else if (r-&amp;gt;esq == NULL) {
            Arv* aux = r;
            r = r-&amp;gt;dir;
            free (aux);
        } else if (r-&amp;gt;dir == NULL) {
            Arv* aux = r;
            r = r-&amp;gt;esq;
            free (aux);
        }
    }
    return r;
}

void main() {

Arv* a = NULL;

    a = insere(a, 1254);
    a = insere(a, 2352);
    a = insere(a, 3412);
    a = insere(a, 4201);
    a = insere(a, 5698);

    printf("Saída:\n");
    imprimeEmOrdem(a);

    a = retira(a, 4201);


    printf("\n\nDepois de retirar o elemento 4201:\n");
    imprimeEmOrdem(a);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execução do código aqui: &lt;a href="https://onlinegdb.com/TmOsoDITJ"&gt;https://onlinegdb.com/TmOsoDITJ&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Portfólio - Aula 04</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Fri, 16 Feb 2024 14:52:25 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-04-369a</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-04-369a</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6dxyuzrxvhzok67k7ycj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6dxyuzrxvhzok67k7ycj.png" alt="Image description" width="534" height="408"&gt;&lt;/a&gt;Criação de uma forma geométrica utilizando Python. Realizei a plotagem de um quadrado:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import matplotlib.pyplot as plt

# Coordenadas dos vértices do quadrado
x = [0, 1, 1, 0, 0]  # Adição do último valor para fechar o quadrado
y = [0, 0, 1, 1, 0]

# Plotagem do quadrado
plt.plot(x, y)

# Definição dos limites dos eixos
plt.xlim(-0.1, 1.1)
plt.ylim(-0.1, 1.1)

# Adição de rótulos aos eixos
plt.xlabel('X')
plt.ylabel('Y')

# Adição de título ao gráfico
plt.title('Quadrado')

# Exibir o gráfico
plt.grid(False)
plt.show()

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>Portfólio - Aula 3</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Mon, 12 Feb 2024 11:45:56 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-03-28a0</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-03-28a0</guid>
      <description>&lt;p&gt;Nesse portfólio contem dois programas relacionados ao tema da aula três, que foi &lt;strong&gt;Paradigmas Imperativos: Matemáticos&lt;/strong&gt;. A aula abordou a diferença entre um programa escrito da forma imperativa e recursiva, visando o tempo de resposta. &lt;/p&gt;

&lt;p&gt;Abaixo um programa que realiza um cálculo exponencial:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;//expo_Iterativa

#include &amp;lt;stdio.h&amp;gt;

double test(int base, int expo) {
    int result = 1;
    int i;

    for (i = 0; i &amp;lt; expo; i++) {
        result *= base;
    }

    return result;
}

int main() {
    int base;
    int expo;

    printf("Digite a base: ");
    scanf("%d", &amp;amp;base);

    printf("Digite o expoente: ");
    scanf("%d", &amp;amp;expo);

    int result = test(base, expo);

    printf("O resultado de %d elevado a %d é: %.d", base, expo, result);

    return 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute aqui: &lt;a href="https://onlinegdb.com/KMbU4xUNP"&gt;https://onlinegdb.com/KMbU4xUNP&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A seguir a versão &lt;strong&gt;recursiva&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;//expo_recursiva

#include &amp;lt;stdio.h&amp;gt;

double test(int base, int expo) {
    if (expo == 0)
        return 1;
    else if (expo &amp;gt; 0)
        return base * test(base, expo - 1);
    else
        return 1 / test(base, -expo);
}

int main() {
    int base;
    int expo;

    printf("Digite a base: ");
    scanf("%d", &amp;amp;base);

    printf("Digite o expoente: ");
    scanf("%d", &amp;amp;expo);

    int r = test(base, expo);

    printf("O resultado de %.d elevado a %d é: | %.d |", base, expo, r);

    return 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute aqui: &lt;a href="https://onlinegdb.com/G3SfdRkL2"&gt;https://onlinegdb.com/G3SfdRkL2&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programming</category>
    </item>
    <item>
      <title>Portfólio - Aula 2</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Wed, 31 Jan 2024 03:16:35 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-2-59om</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-2-59om</guid>
      <description>&lt;p&gt;Neste segundo portfólio referente a &lt;em&gt;aula 2&lt;/em&gt; em que o assunto foi a respeito do &lt;strong&gt;paradigma imperativo&lt;/strong&gt; abordamos os conceitos e diferenças em relação ao &lt;strong&gt;paradigma declarativo&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Busca sequencial em uma String usando iterações e recursividade:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def busca_sequencial(lista, elemento):
    for i in range(len(lista)):
        if lista[i] == elemento:
            return i  # Retorna o índice do elemento se encontrado
    return -1  # Retorna -1 se o elemento não estiver na lista

lista_numeros = [25, 44, 47, 82, 9, 18, 30, 21, 51]
elemento_procurado = 18

resultado = busca_sequencial(lista_numeros, elemento_procurado)

if resultado != -1:
    print(f"O elemento {elemento_procurado} foi encontrado no índice {resultado}.")
else:
    print(f"O elemento {elemento_procurado} não foi encontrado na lista.")

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute aqui: &lt;a href="https://onlinegdb.com/cVqE4jsJs"&gt;https://onlinegdb.com/cVqE4jsJs&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Busca Iterativa:&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#include &amp;lt;stdio.h&amp;gt;

int buscaSequencialIterativa(const char* string, char alvo) {
    int i;
    for (i = 0; string[i] != '\0'; i++) {
        if (string[i] == alvo) {
            return i;  // Retorna o índice se o caractere for encontrado
        }
    }
    return -1;  // Retorna -1 se o caractere não for encontrado
}

int main() {
    const char* minhaString = "Santarém";
    char caractereProcurado = 't';

    int resultado = buscaSequencialIterativa(minhaString, caractereProcurado);

    if (resultado != -1) {
        printf("O caractere '%c' foi encontrado no índice %d.\n", caractereProcurado, resultado);
    } else {
        printf("O caractere '%c' não foi encontrado na string.\n", caractereProcurado);
    }

    return 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute aqui: &lt;a href="https://onlinegdb.com/KWvcvkXmj"&gt;https://onlinegdb.com/KWvcvkXmj&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Portfólio - Aula 1</title>
      <dc:creator>Gabriel de Oliveira</dc:creator>
      <pubDate>Wed, 31 Jan 2024 00:16:54 +0000</pubDate>
      <link>https://dev.to/aleixo_gabrie1/portfolio-aula-1-3ddf</link>
      <guid>https://dev.to/aleixo_gabrie1/portfolio-aula-1-3ddf</guid>
      <description>&lt;p&gt;Este portfólio tem como objetivo apresentar o meu avanço na disciplina de Laboratório de Programação do curso de BSI. Iniciando pela &lt;em&gt;aula 1&lt;/em&gt; que foi sobre o assunto de &lt;strong&gt;paradigmas de programação.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Abaixo um programa que solicita do usuário que lhe passe dados para realizar uma equação, que funciona com o paradigma procedural. Realizando a instrução de realizar a soma e mostrar o resultado.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#include &amp;lt;stdio.h&amp;gt;

// Função para calcular a soma de dois números
int somar(int a, int b) {
    return a + b;
}

int main() {
    // Declaração de variáveis
    int numero1, numero2, resultado;

    // Solicitar ao usuário que insira dois números
    printf("Digite o primeiro número: ");
    scanf("%d", &amp;amp;numero1);

    printf("Digite o segundo número: ");
    scanf("%d", &amp;amp;numero2);

    // Chamada da função para calcular a soma
    resultado = somar(numero1, numero2);

    // Exibir o resultado
    printf("A soma de %d + %d é: %d\n", numero1, numero2, resultado);

    return 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute aqui: &lt;a href="https://onlinegdb.com/iNpWaDjou"&gt;https://onlinegdb.com/iNpWaDjou&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Outro exemplo que realizar &lt;strong&gt;uma ação é um programa que ao inserir um ano mostre como resultado a idade do usuário no ano de 2024&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;time.h&amp;gt;

int main() {
    // Declaração de variáveis
    int anoNascimento, idade;

    // Solicitar ao usuário que insira o ano de nascimento
    printf("Digite o ano de nascimento: ");
    scanf("%d", &amp;amp;anoNascimento);

    // Obter o ano atual
    time_t agora = time(NULL);
    struct tm *dataAtual = localtime(&amp;amp;agora);
    int anoAtual = dataAtual-&amp;gt;tm_year + 1900;

    // Calcular a idade
    idade = anoAtual - anoNascimento;

    // Exibir a idade
    printf("Neste ano de 2024 sua idade é: %d anos.\n", idade);

    return 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute aqui: &lt;a href="https://onlinegdb.com/Z7bPhrXLj"&gt;https://onlinegdb.com/Z7bPhrXLj&lt;/a&gt;&lt;/p&gt;

</description>
      <category>community</category>
      <category>coding</category>
    </item>
  </channel>
</rss>
