<!DOCTYPE html>
<html dir='ltr' xml:lang='pt-br' lang='pt-br'>
 <head>
  <title>Introdução à Programação :: Prof. Leônidas O. Brandão (LInE/IME/USP)</title>
  <meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />

<!--
Apostila Intrudução à Resolução de Problemas via Algoritmos [Arquivo PDF]
Sobre a estrutura básica de um programa em C ou em Python [Pagina Moodle] -> URL
Sobre a linguagem a ser usada e sobre os exercícios com avaliação automática [Pagina Moodle] ->
Veja exemplos de erros no avaliador automático e como evitá-los (FAQ) [Pagina Moodle]
Sobre nova versão do avaliador automático de exercícios de programacão (2017/05/10)

Aparencia baseada em modelo do Moodle 3.X
 * css_img_js_conf/icone_leo.png
 * css_img_js_conf/folder.svg
 * css_img_js_conf/all.css

Mini-tutorial sobre o editor "online": como fazer, editar e verificar se um programa foi enviado - [URL] tutor_sobre_editor_vpl/
Sobre a estrutura básica de um programa em C ou em Python                                        - [URL] introducao_estrutura_basica_c_python.html
Introdução às variáveis e expressões aritméticas                                                 - [URL] introducao_var.html
Introdução à entrada de dados em Python 2                                                        - [URL] introducao_leituras_python.html
Introdução ao comando de seleção e às expressões lógicas                                         - [URL] introducao_if.html
Introdução elementar à Lógica                                                                    - [URL] introducao_logica.html
Introdução às técnicas básicas de depuração de código                                            - [URL] introducao_depuracao_codigos.html
Introdução ao comando de repetição while                                                         - [URL] introducao_while.html
Introdução ao uso de funções em C e em Python                                                    - [URL] introducao_funcoes.html 
Introdução ao uso de funções em C: variáveis locais, globais e aninhamento de funções            - [URL] introducao_funcoes_c.html           2018/05/21
Introdução ao uso de funções em Python: variáveis locais, globais e aninhamento de funções       - [URL] introducao_funcoes_python.html      2018/05/21
Introdução ao comando de repeticao for em C e em Python                                          - [URL] introducao_for.html
Introdução ao conceito de indicador de passagem                                                  - [URL] indicador_passagem.html
Introdução ao conceito de eficiência de algoritmos                                               - [URL] introducao_eficiencia_algoritmos.html
Introdução à ordenação                                                                           - [URL] introducao_ordenacao.html           2019/06/16
Por que evitar entrada/saida de dados em funções?                                                - [URL] evitar_entrada_saida_em_funcao.html
Introdução ao uso de matrizes                                                                    - [URL] introducao_matrizes.html

-->


  <meta name='keywords' content='mac0122, material, professore, leonidas de oliveira brandao' />
  <link rel='stylesheet' type='text/css' href='css_img_js_conf/all.css' />
  <link rel='stylesheet' type='text/css' href='css_img_js_conf/line_introducao_programacao.css' />
  </style>
 </head>

<body class='format-topics gecko lang-pt_br pagelayout-incourse'>

<div id='page-wrapper'>

  <header role='banner' class='navbar navbar-full navbar-light bg-faded navbar-static-top'>
    <div class='container-fluid navbar-nav'>
      <a href='index.html' class='navbar-brand' title="Início do material para Introdução à Programação">Introdução</a><!-- botao fundo azul -->
      <!-- user_menu -->
      <div class='usermenu'>
        <div class='menubar' id='action-menu-1-menubar' role='menubar'>
          <a href='http://www.ime.usp.br/~leo' title='seguir para sitio pessoal do autor' role='button'>
           <span class='userbutton'>
             <span class='usertext'>Leônidas de Oliveira Brandão</span>
             <span class='avatars 'avatar current'>
               <img src='css_img_js_conf/icone_leo.png' alt='Imagem de Leônidas de Oliveira Brandão'
                    title='Imagem de Leônidas de Oliveira Brandão' class='userpicture' role='presentation' height='35' width='35'>
             </span>
           </span>
          </a>
        </div>
      </div>
    </div><!-- class='container-fluid navbar-nav' -->
  </header>

  <div id='page' class='container-fluid'>

   <header id='page-header' class='row'>

    <div class='col-xs-12'>
     <div class='card card-block titulo'>
       <h1>Material didático para Introdução à Programação</h1>
       <!-- caminho -->
       <div class='clearfix w-100 pull-xs-left' id='page-navbar'>
        <div class='breadcrumb-nav'>
         <nav role='navigation'>
          <ol class='breadcrumb'>
           <li class='breadcrumb-item'><a href='http://www.ime.usp.br/~leo/'>Página inicial</a></li>
           <li class='breadcrumb-item'><a href='index.html' title='inicio material'>Material de apoio didático</a></li>
          </ol>
         </nav>
        </div>
       </div>
     </div>
    </div><!-- class='col-xs-12 p-a-1' -->

    <div class='col-xs-12 p-a-1'><!-- class='col-xs-12 p-a-1' -->
     <div class='card card-itens'><!-- class='card' -->
      <div class='card-block'><!-- class='card-block' -->

    <div id="page-content" class="row">
      <div id="region-main-box" class="col-xs-12">

        <section id="region-main">
          <div class="card-itens">

          <div role="main">
            <h2>Material didático de apoio aos cursos introdutórios de programação</h2>
            <div class="box generalbox center clearfix p-y-1">

              <!-- Itens -->
              <div class="media-group list-group"> <!-- Lista de material -->

                <!-- diretorios -->
                <a href="tutor_sobre_editor_vpl/index.html" class="list- group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/folder.svg" />
                  Mini-tutorial sobre o editor "online": como fazer, editar e verificar se um programa foi enviado
                </p>
                </a>
                <!-- arquivos -->
                <a href="line_introducao_estrutura_basica_c_python.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg" />
                  Sobre a estrutura básica de um programa em C ou em Python
                </p>
                </a>

                <a href="line_introducao_var.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução às variáveis e expressões aritméticas
                </p>
                </a>

                <p>
                <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Declarar/usar variáveis e modos para entrada/saída:
                  <a class="" title="Ver E/S em Python 2" href="line_introducao_leituras_python2.html" class="list-group-item">
                     em Python 2</a>;
                  <a class="" title="Ver E/S em C" href="line_introducao_leituras_c.html" class="list-group-item">
                     em C</a>
                </p>

                <a href="line_introducao_logica.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução elementar à lógica
                </p>
                </a>

                <a href="line_introducao_depuracao_codigos.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução às técnicas básicas de depuração de código
                </p>
                </a>

                <a href="line_introducao_inteiros.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução aos números inteiros
                </p>
                </a>

                <a href="line_introducao_float.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução aos números "reais" (ponto flutuante)
                </p>
                </a>

                <a href="line_introducao_inteiro_float.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução à conversão inteiro/float e divisões
                </p>
                </a>

                <a href="line_introducao_char.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução aos caracteres
                </p>
                </a>

                <a href="line_introducao_if.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao comando de seleção e às expressões lógicas
                </p>
                </a>

                <a href="line_introducao_while.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao comando de repetição while
                </p>
                </a>

                <a href="line_introducao_funcoes.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao uso de funções em C e em Python
                </p>
                </a>

                <a href="line_evitar_entrada_saida_em_funcao.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Por que evitar entrada/saida de dados em funções?
                </p>
                </a>

                <a href="line_introducao_parametros_funcoes.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao conceito de parâmetros para funções
                </p>
                </a>

                <a href="line_introducao_funcoes_python.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao uso de funções em Python: variáveis locais, globais e aninhamento de funções
                </p>
                </a>

                <a href="line_introducao_funcoes_c.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao uso de funções em C: variáveis locais, globais e aninhamento de funções
                </p>
                </a>


                <p>
                <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Vetores, matrizes e "strings":
                  <a class="" title="Ver introdução ao conceito" href="line_introducao_vetores.html" class="list-group-item">
                     introdução</a>;
                  <a class="" title="Alguns detalhes em Python" href="line_introducao_vetores_python.html" class="list-group-item">
                    alguns detalhes em <i>Python</i></a>; e
                  <a class="" title="Alguns detalhes em C" href="line_introducao_vetores_c.html" class="list-group-item">
                    alguns detalhes em <i>C</i></a>
                </p>

                <a href="line_introducao_apontadores_c.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução aos apontadores com a linguagem <i>C</i>
                </p>
                </a>

                <a href="line_introducao_matrizes.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao uso de matrizes
                </p>
                </a>

                <a href="line_introducao_for.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao comando de repetição <i>for</i><!-- em <i>C</i> e em <i>Python</i>-->
                </p>
                </a>

                <a href="line_indicador_passagem.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao conceito de indicador de passagem
                </p>
                </a>

                <a href="line_introducao_eficiencia_algoritmos.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao conceito de eficiência de algoritmos
                </p>
                </a>

                <a href="line_introducao_ordenacao.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução à ordenação
                </p>
                </a>

                <a href="line_introducao_recursividade.html" class="list-group-item">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Introdução ao conceito de algoritmos recursivos (ou recorrentes)
                </p>
                </a>


                <a href="line_introducao_recursividade_exemplos.html" class="list-group-item">
                <p class="ultimo"><!-- precisa para linha final -->
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Mais exemplos de algoritmos recursivos (ou recorrentes)
                </p>
                </a>


<!--
                <p>
                <a href="line_">
                <p>
                  <img class="icon smallicon" alt="" src="css_img_js_conf/navigationitem.svg">
                  Sobre...
                </p>
                </a>
-->




              </div><!-- class="media-group list-group" --> <!-- Lista de material -->
              </div><!-- Itens -->
            </div><!-- class="box generalbox center clearfix p-y-1" -->
          </div><!-- role="main" -->
          </div><!--  -->
        </section><!-- id="region-main" -->
      </div><!-- id="region-main-box" class="col-xs-12" -->
    </div><!-- id="page-content" class="row" -->

  <p class="autoria">
    <a href="https://www.ime.usp.br/~leo" target="_blank" title="seguir para a pagina do prof. Leônidas">Leônidas de Oliveira Brandão</a><br/>
    <a href="http://www.ime.usp.br/~leo" target="_blank" title="seguir para a página do LInE">http://line.ime.usp.br</a>
  </p>

  <p class="rodape">
     Última atualização: domingo, 16 Ago 2020: nova estrutura (HTML com JavaScript), ampla revisão na maioria dos textos.
     <!--
       domingo, 16 Ago 2020, 16:00 - nova estrutura (HTML com JavaScript), ampla revisão na maioria dos textos
       sexta,   14 Ago 2020, 23:00 - nova estrutura, novo CSS
       segunda, 06 Jul 2020, 23:30 - novo texto sobre indicador de variáveis e entradas em Python 2 'introducao_leituras_python.html'
       quarta,  08 May 2019, 23:55 - novo texto sobre indicador de passagem 'indicador_passagem.html'
       sexta,   15 Jun 2018, 18:00 - novo texto sobre recorrencia 'introducao_recursividade_exemplos.html'
       domingo, 03 Jun 2018, 19:00 - revisao texto recorrencia 'introducao_recursividade.html'
       segunda, 21 May 2018, 19:00
       segunda, 21 May 2018, 19:00 - novos textos 'introducao_funcoes_c.html,introducao_funcoes_python.html'
       terca,   08 May 2018, 12:00 - revisao dos textos; sobre vetor, matriz e "string"; de eficiencia; de char_float (detalhe); de funcoes
       terca,   08 May 2018, 12:00 - revisao dos textos; sobre vetor, matriz e "string"; de eficiencia; de char_float (detalhe); de funcoes
       sexta,   04 May 2018, 00:00 - novos textos sobre vetor, matriz e "string"
       sexta,   27 Abr 2018, 11:00 - alteracoes grandes no texto sobre comando for
       terca,   23 Abr 2018, 12:00 - novo texto sobre parametros de funcoes
       domingo, 15 Abr 2018, 21:00
       domingo, 15 Abr 2018, 21:00 - introducao_inteiros.html e introducao_float.html
       segunda, 20 Mar 2017, 17:02
     -->
  </p>

  <footer id='page-footer' class='bg-inverse'>
    <div class='container'><div id='course-footer'></div>
      <p class='helplink'>Material didático - Prof. Leônidas de Oliveira Brandão</p>
    </div>
  </footer>

</div><!-- class='card-block' 3 -->
</div><!-- class='card' -->
</div><!-- class='col-xs-12 p-a-1' -->

</header><!-- id='page-header' class='row' -->

</div><!-- id='page' class='container-fluid' -->
  
</div><!-- id='page-wrapper' -->

</body>
</html>