/* Programa  segundo083.cc  
	Assunto:   Tutorial sobre cálculos aritméticos.
	Condicionantes:
		g++ -Wall -oprog segundo083.cc

	Programa sem erros

	Descrição:  

	palavras chave: tipo int
   palavras chave: while(), laço, incremento
   por Tarcisio Praciano Pereira - 10 licoes para aprender C++
   Sobral, Abril de 2005	- UeVA    	      		
*/

#include <iostream>
#include "Ambiente.h"			// a minha classe Ambiente.h
using namespace std; // a evitar - polui o espaço de nomes 

Ambiente	Tela;					// o exemplo de Ambiente neste programa

// As funções que vou usar neste programa
float f(int n);

int main()
{
	int n; 	// (10) variáveis do tipo inteiro
	int contador;
	Tela.limpa_janela(); 
	contador = 1;
	n = 1;  		// (20)  Sempre inicialize a variável antes do while()
	while(n <= 20 )
	{
		if ( contador == 5) 		// (10) somente entra se contador for 20
			{ 
				contador = 0; 				// (30) reiniciliza o contador
				Tela.apeteco2();			// (50) elimine esta linha
			}
		cout << f(n) << endl;
		contador = contador + 1;		// (40) incrementa o contador
		n = n+1; 						// o incremento da variável
	}
	cout << "O último termo da p.a. é "  << f(n) << endl;
	Tela.apetecof(); 	// usando o método apetecof() de Ambiente.h
	Tela.limpa_janela(); 
	return(0);
}


int rotulo()
{
   cout  << "\t =============== Aritmética em C++ ================" << endl  
    		<< "\t Este programa imprime 10 números, carregando pedra."<< endl;
	return(0);
}


// termo geral de uma p.a.  resulta no termo   an = a0 + (n-1)r
float f(int n)
{
	float a0=-3, r=1.5; // os dados da p.a. - primeiro termo e razão  
	return (a0 + (n-1)*r);  // a equação clássica das p.a.
}


/* Comentários:  A numeração dos comentários não
		  é continuada, pode dar saltos...para
		  facilitar a reutilização de programas.

(10) o termo geral de uma p.a. não vai ser um inteiro, tem que ser
		um número fracionário. Portanto o valor de retorno de uma
		p.a.  deve ser   float		



*/

