<?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: Martin Corona</title>
    <description>The latest articles on DEV Community by Martin Corona (@martincorona007).</description>
    <link>https://dev.to/martincorona007</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%2F292217%2Fb94b5b49-753c-48db-a52b-94672e4d3e19.jpeg</url>
      <title>DEV Community: Martin Corona</title>
      <link>https://dev.to/martincorona007</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/martincorona007"/>
    <language>en</language>
    <item>
      <title>Matrix neighbors</title>
      <dc:creator>Martin Corona</dc:creator>
      <pubDate>Sat, 16 May 2020 16:37:25 +0000</pubDate>
      <link>https://dev.to/martincorona007/matrix-neighbors-2d9</link>
      <guid>https://dev.to/martincorona007/matrix-neighbors-2d9</guid>
      <description>&lt;p&gt;In this blog I will explain the functionality of this program, the purpose of this program is to iterate all the matrix adding the neighbor numbers, dividing it by the number of neighbors and put the result in the second matrix where the operation took place in the first matrix.&lt;/p&gt;

&lt;p&gt;First of all, we’ll start in the Figure 1,As we can see the algorithm take place in the first matrix’s cell in color red, we can see that the matrix in the left side, upper left corner, and upper left side in color yellow doesn’t have neighbors, so the algorithm will take the opposite side, that is to say the cell in color green. The algorithm will save the result in the second matrix in the same position in color red.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffy24abrpgqckpavybfr5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffy24abrpgqckpavybfr5.png" alt="Alt Text" width="252" height="146"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 2, As we mention before, the algorithm will iterate through all the cells, in this case we can see that the algorithm had iterated through the cell [0,3],but we can see that the matrix doesn’t have the upper side neighbors in color yellow, therefore the algorithm will take the lower sides in color green, and the result will be adding in the second matrix in the same position in color red.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Falfm9wkwxtm7za43z2c9.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Falfm9wkwxtm7za43z2c9.PNG" alt="Alt Text" width="245" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 3, The algorithm takes the right upper corner in color red, but the matrix doesn’t have the neighbors in color yellow, Therefore, the algorithm takes the cells in color green, and the result will be adding in the second matrix in the same position in color red.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fslrefupsyh5dnu8mg4k4.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fslrefupsyh5dnu8mg4k4.PNG" alt="Alt Text" width="291" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 4,The algorithm had iterated until cell [1,0], but the matrix doesn’t have the neighbors in the left side in color yellow, Therefore, the algorithm will take the opposite side in color green, and the result will be adding in the second matrix in the same position in color red.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fh1zsh74hi8kd69zl495g.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fh1zsh74hi8kd69zl495g.PNG" alt="Alt Text" width="291" height="167"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 5, we can see that the algorithm takes the cell [1,1], and the matrix knows all its neighbors, which there’s no problem to do the operation.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fdkpudll8xdoazmiaycb6.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fdkpudll8xdoazmiaycb6.PNG" alt="Alt Text" width="303" height="168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 6, We can see that the algorithm had iterated through cell [1,4], but the matrix doesn’t have the neighbors in the right side in color yellow, whereby the algorithm will take the opposite sides in color green, and the result will be adding in the second matrix in the same position in color red.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqxbo1z927zv2aiterjws.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqxbo1z927zv2aiterjws.PNG" alt="Alt Text" width="298" height="170"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 7, We can observe that in the cell in color red, it’s on the lower left corner and the matrix doesn’t have the neighbors in color yellow, whereby the algorithm will take the opposite sides in color green, and the result will be adding in the second matrix in the same position in color red.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F6nvey15snaevww05x2qk.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F6nvey15snaevww05x2qk.PNG" alt="Alt Text" width="274" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 8, We can observe that the algorithm had iterated through the cell [4,1], but the matrix doesn’t have the neighbors in the lower side in color yellow, whereby the algorithm will take the opposite sides in color green, and the result will be adding in the second matrix in the same position in color red.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fspxog1p1myqohgf216yn.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fspxog1p1myqohgf216yn.PNG" alt="Alt Text" width="255" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Figure 9,We can appreciate that the algorithm had reached to the last cell of the matrix in color red, but the matrix doesn’t have the neighbors in color yellow, whereby the algorithm will take the opposite sides in color green, and the result will be adding in the second matrix in the same position in color red.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8djx7o87aoymu72zfzlo.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8djx7o87aoymu72zfzlo.PNG" alt="Alt Text" width="292" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Therefore, every figure is a technique and it will get in operation when the matrix doesn’t know its neighbors.&lt;/p&gt;

&lt;p&gt;The code:&lt;br&gt;
&lt;a href="https://github.com/martincorona007/Graphics/tree/master/Program%202%20Matrix%20Circular" rel="noopener noreferrer"&gt;https://github.com/martincorona007/Graphics/tree/master/Program%202%20Matrix%20Circular&lt;/a&gt;&lt;/p&gt;

</description>
      <category>matrix</category>
      <category>arrays</category>
      <category>c</category>
      <category>cpp</category>
    </item>
    <item>
      <title>Full Adder</title>
      <dc:creator>Martin Corona</dc:creator>
      <pubDate>Sat, 18 Jan 2020 04:14:43 +0000</pubDate>
      <link>https://dev.to/martincorona007/full-adder-bf2</link>
      <guid>https://dev.to/martincorona007/full-adder-bf2</guid>
      <description>&lt;p&gt;A full adder Figure 1 is a digital circuit that adds three one-bit numbers: two operands named X and Y and a carried bit named CIN. The circuit produces a two-bit output: an output carry bit named COUT and the result bit S.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkalosofoaj6hp9k9mspa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkalosofoaj6hp9k9mspa.png" alt="Alt Text" width="176" height="150"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this practice is about compute the Turing Machine that emulates an 8-bits iterative adder, as an example in the Figure 2.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8hnjx783kiutp2ajvtiw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8hnjx783kiutp2ajvtiw.png" alt="Alt Text" width="187" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Using the picture from the figure 1 will be something like the figure 3.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fby9yo5q90tvuz5hue43j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fby9yo5q90tvuz5hue43j.png" alt="Alt Text" width="694" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the next figure 4 it shows of the adder works.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnjz7809v2vy4uz06kpp3.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnjz7809v2vy4uz06kpp3.PNG" alt="Alt Text" width="746" height="222"&gt;&lt;/a&gt;&lt;br&gt;
                            Figure 4 Full adder 8 bits.&lt;/p&gt;

&lt;p&gt;For the development of this practice, as a first step we must design a model for to know the functionality of the process, The symbol — means that it will decreasing, The symbol + means that it will increasing to do the movements through the process, The model is show in the Figure 5.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwttu3jj8gfv4u6quzgdc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwttu3jj8gfv4u6quzgdc.png" alt="Alt Text" width="610" height="733"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                        Figure 5 The Adder’s Model.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;In this table will be explained a explanation about how the model works, on the left side of the table it will show the movements in the tape, the cell with the color gray will be the header.&lt;/p&gt;

&lt;p&gt;B=Blank, R=right, L=left,the cell in gray will the header.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fffat1yvi5m1ppcsb5dk2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fffat1yvi5m1ppcsb5dk2.png" alt="Alt Text" width="681" height="656"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Conclusion&lt;/p&gt;

&lt;p&gt;At the beginning it was difficult to understand, because I didn’t know where I should start, So I wonder, How this works? And there’s where I can figure out and make it possible. One of the things that I noticed, It’s that if you move the The Adder’s Model in the Figure 5 to the Right its a heart ❤&lt;/p&gt;

&lt;p&gt;the code &lt;a href="https://github.com/martincorona007/Adder" rel="noopener noreferrer"&gt;https://github.com/martincorona007/Adder&lt;/a&gt;&lt;/p&gt;

</description>
      <category>adder</category>
      <category>turingmachine</category>
      <category>computerscience</category>
      <category>fulladder</category>
    </item>
    <item>
      <title>Lexical Analysis</title>
      <dc:creator>Martin Corona</dc:creator>
      <pubDate>Sun, 12 Jan 2020 17:10:13 +0000</pubDate>
      <link>https://dev.to/martincorona007/lexical-analysis-1l5g</link>
      <guid>https://dev.to/martincorona007/lexical-analysis-1l5g</guid>
      <description>&lt;p&gt;The first phase of a compiler design is called Lexical Analysis or scanner.  The Lexical Analysis read the Stream of characters that make up the source of file and group the significative sequences, known as a lexeme.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                          &amp;lt;token class, attribute value&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;For example&lt;br&gt;
int doc=8;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fft53qhynav8zabs9w86o.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fft53qhynav8zabs9w86o.PNG" alt="Alt Text" width="362" height="167"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs5s2rikj3jrcjpobeyrv.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs5s2rikj3jrcjpobeyrv.PNG" alt="Alt Text" width="613" height="37"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the next table will be the lexemes classes used in the development of the practice.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcfn9jokbn59cihu1ogae.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcfn9jokbn59cihu1ogae.PNG" alt="Alt Text" width="653" height="572"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvv1mx7q7y4wtflukn0ka.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvv1mx7q7y4wtflukn0ka.PNG" alt="Alt Text" width="656" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the next Figure 1, it shows the first Automata called A1 which recognize identifiers:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftas5qnechq67e77an1x1.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftas5qnechq67e77an1x1.PNG" alt="Alt Text" width="519" height="271"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The next Figure 2, it shows the Automata A2 which recognize Octal numbers, Hexadecimal number and Real number:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwyeg3miz9pq9kq2vwj1t.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwyeg3miz9pq9kq2vwj1t.PNG" alt="Alt Text" width="645" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The next Figure 3, it shows the Automata A3 which recognize Delimitation characters, Arithmetic operators, Punctuation marks and Assignment Operator:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgnj1aw2et76y4e86wt3g.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgnj1aw2et76y4e86wt3g.PNG" alt="Alt Text" width="571" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The next Figure 4, it shows the Automata A4 comments:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7vkm0apaykvaecnkya8u.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7vkm0apaykvaecnkya8u.PNG" alt="Alt Text" width="362" height="177"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this automata the number 10 represents New Line in ASCII code.&lt;/p&gt;

&lt;p&gt;Conclusions:&lt;/p&gt;

&lt;p&gt;As a conclusion, it was difficult to understand and solve the EOF, Blacks and comments. Because when I was using fgetc() function whit a char variable, the char variable was changing it for another number and never reach to EOF. So that was freaking me out but finally I solve it. Sometimes when the lexical analysis read a black it was doing a loop infinite but it was solved. Also, I consider that this practice was a huge challenge, but I made it.&lt;/p&gt;

&lt;p&gt;The code: &lt;a href="https://github.com/martincorona007/Lexical_analysis" rel="noopener noreferrer"&gt;https://github.com/martincorona007/Lexical_analysis&lt;/a&gt;&lt;/p&gt;

</description>
      <category>automata</category>
      <category>compiler</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Insert Before Double Linked List</title>
      <dc:creator>Martin Corona</dc:creator>
      <pubDate>Sat, 14 Dec 2019 06:09:14 +0000</pubDate>
      <link>https://dev.to/martincorona007/insert-before-double-linked-list-20nh</link>
      <guid>https://dev.to/martincorona007/insert-before-double-linked-list-20nh</guid>
      <description>&lt;p&gt;In this Algorithm the way it works is by adding a node before the node is selected, Therefore, I'll explain the parts of this Algorithm:&lt;/p&gt;

&lt;p&gt;{x is going to be the node to select, data is the information to add}&lt;/p&gt;

&lt;p&gt;{Q, T and R are pointers}&lt;/p&gt;

&lt;p&gt;{Info is the content of the node, linkft is the pointer to the left, linker is the pointer to the right}&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F24gohp6azncfq13bd1tr.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F24gohp6azncfq13bd1tr.PNG" alt="Alt Text" width="287" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;First of all, We'll need a list done,then we select the node to add before, which in this case is 66 and the node we'll add is 24 as show in the Figure 1.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hlyj0czyq0grykaicyj.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1hlyj0czyq0grykaicyj.PNG" alt="Alt Text" width="664" height="99"&gt;&lt;/a&gt;&lt;br&gt;
                                 Figure 1 The list.&lt;/p&gt;

&lt;p&gt;After that, We going to make that the node Q point to the head, as show in the Figure 2.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy0zlnpei36ientb8fn1f.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy0zlnpei36ientb8fn1f.PNG" alt="Alt Text" width="660" height="130"&gt;&lt;/a&gt;&lt;br&gt;
Figure 2 node Q point to the first node.&lt;/p&gt;

&lt;p&gt;So, for to check through all of the list we going to use a loop, for look up the node we select and different to NULL, as show in the Figure 3 and Figure 3.1.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxzlvgbo6a32mfhtsa1r1.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxzlvgbo6a32mfhtsa1r1.PNG" alt="Alt Text" width="665" height="97"&gt;&lt;/a&gt;&lt;br&gt;
Figure 3.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fptghgbp0bzihlnk2elfq.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fptghgbp0bzihlnk2elfq.PNG" alt="Alt Text" width="627" height="86"&gt;&lt;/a&gt;&lt;br&gt;
Figure 3.1 This loop will check node by node, which we selected.&lt;/p&gt;

&lt;p&gt;Once, the Algorithm found the node which we selected, then we create the new node,as show in the Figure 4.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fapqovcl2wqyolwrn1cg0.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fapqovcl2wqyolwrn1cg0.PNG" alt="Alt Text" width="630" height="132"&gt;&lt;/a&gt;&lt;br&gt;
Figure 4 Create new node 24 which is the pointer T.&lt;/p&gt;

&lt;p&gt;So, we start by doing that the node T point to the right side of the node Q, as show in the Figure 5.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgtf4cut9tm1n85wsr6m9.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgtf4cut9tm1n85wsr6m9.PNG" alt="Alt Text" width="648" height="127"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 5 node T point to node Q.&lt;/p&gt;

&lt;p&gt;After that, The node R will point to the left node of the node Q, as show in the Figure 6.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxdinqpb8rccfwdj81b1u.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxdinqpb8rccfwdj81b1u.PNG" alt="Alt Text" width="638" height="115"&gt;&lt;/a&gt;&lt;br&gt;
Figure 6 node R point to the left side of the node Q.&lt;/p&gt;

&lt;p&gt;In the next line, the node Q will point to the left side of the node T,as show in the Figure 7.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3pkj9vkvqjy9ikyr87ka.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3pkj9vkvqjy9ikyr87ka.PNG" alt="Alt Text" width="638" height="129"&gt;&lt;/a&gt;&lt;br&gt;
Figure 7 node Q point to the left side of the node T.&lt;/p&gt;

&lt;p&gt;In the next Figure 8, the Algorithm check if the node Q is the head of the List, if the case is true, then the head will point to node T and T link left will going to be NULL, but as we see in this case, node Q is not at the beginning, pass to the next case.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbds4c9grgat1yuhzbh0c.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbds4c9grgat1yuhzbh0c.PNG" alt="Alt Text" width="659" height="113"&gt;&lt;/a&gt;&lt;br&gt;
Figure 8 Check if node Q is the beginning of the list.&lt;/p&gt;

&lt;p&gt;Therefore, the node R will point to the right side of the node T, as show in the Figure 9.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fedvo76vkwi5wkzqo96pv.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fedvo76vkwi5wkzqo96pv.PNG" alt="Alt Text" width="651" height="126"&gt;&lt;/a&gt;&lt;br&gt;
Figure 9 node R point to the right side of node T.&lt;/p&gt;

&lt;p&gt;As last step, the node T will point to the left side of R, as show in the Figure 10.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vic0mbe7yaaq0xy8wjy.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vic0mbe7yaaq0xy8wjy.PNG" alt="Alt Text" width="655" height="114"&gt;&lt;/a&gt;&lt;br&gt;
Figure 10 node T point to the left side of node R.&lt;/p&gt;

&lt;p&gt;Finally,&lt;/p&gt;

&lt;p&gt;the node T have been added to the list, as show in the Figure 11. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff5rbfqvhwa846wuxdznx.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff5rbfqvhwa846wuxdznx.PNG" alt="Alt Text" width="658" height="84"&gt;&lt;/a&gt;&lt;br&gt;
Figure 11 node T added to the list.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp4yhsp7rql9g1dkywhbf.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp4yhsp7rql9g1dkywhbf.PNG" alt="Alt Text" width="678" height="478"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>datastructure</category>
      <category>c</category>
      <category>linkedlist</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Regular Processing</title>
      <dc:creator>Martin Corona</dc:creator>
      <pubDate>Sat, 14 Dec 2019 05:29:33 +0000</pubDate>
      <link>https://dev.to/martincorona007/regular-processing-42dk</link>
      <guid>https://dev.to/martincorona007/regular-processing-42dk</guid>
      <description>&lt;p&gt;In this practice is about compute an automaton and generate the synthetize for the regexp in Figure 1.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkluisblzx7sx5408wii9.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkluisblzx7sx5408wii9.PNG" alt="Alt Text" width="207" height="96"&gt;&lt;/a&gt;&lt;br&gt;
                                   Figure 1.&lt;/p&gt;

&lt;p&gt;After have a deterministic version of the automaton corresponding the regeexp on figure 1, the automaton will implement with the following design, the system states will be coded as non-negative integers, the sequence of events will be presented as a standard string, the indefiniteness of a state will be coded as -1.&lt;/p&gt;

&lt;p&gt;The synthesis of the regexp&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzn0vj8u58sf5qt9th7vc.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzn0vj8u58sf5qt9th7vc.PNG" alt="Alt Text" width="412" height="439"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fynfq8mnuta7w3omhe349.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fynfq8mnuta7w3omhe349.PNG" alt="Alt Text" width="416" height="262"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqskwjshb1dfrkghskpjl.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqskwjshb1dfrkghskpjl.PNG" alt="Alt Text" width="521" height="291"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgwac2ng3mdysu6x483iy.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgwac2ng3mdysu6x483iy.PNG" alt="Alt Text" width="717" height="624"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl8kf9km8mac5382vr5gk.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl8kf9km8mac5382vr5gk.PNG" alt="Alt Text" width="570" height="595"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>automata</category>
      <category>theoryofcomputation</category>
      <category>career</category>
    </item>
  </channel>
</rss>
