Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

przeglądanie tablicy obiektów wewnątrz funkcji skladowej

Ostatnio zmodyfikowano 2015-01-02 13:01
Autor Wiadomość
vampireanonn
Temat założony przez niniejszego użytkownika
przeglądanie tablicy obiektów wewnątrz funkcji skladowej
» 2015-01-02 13:01:43
Witam to moj pierwszy post tutaj. Sprawa wygląda tak mam do napisania nastepujacy program:

Problem liszaja
Zasymuluj zarażenie liszajem stosując tablice n x n komórek skory.Rozpocznij od zarażenia środkowej komórki. Po upływie kolejnej jednostki czasu zarażona komórka ma 50% szans zarażenia każdej ze zdrowych komórek. Po sześciu jednostkach czasu komórka staje się odporna na cztery jednostki czasu i następnie zdrowa. Zasymuluj te chorobę i wyświetlaj tablice po każdej jednostce czasu.



No więc do tej pory zrobilem takie coś :
Utworzylem tablice obiektów powpisywalem wartosci oraz zarazilem srodkowa komorke teraz chcialbym stworzyc funkcje składową klasy sprzawdz_sasiadow ktora sprawdzala by sasiednie komorki. Problem mam poniewaz nie wiem jak przesłać te tablice do funkcji. Pewnie banalna sprawa jednak ja nie wiem.

Main.cpp
 
C/C++
#include <iostream>
#include "klasa.h"
#include <ctime>

using namespace std;

void czekaj( int iMilisekundy );

void main()
{
    int n, x; //n rozmiar macierzy, x jednostka czasu
    cout << "Podaj szerokosc tablicy" << endl;
    cin >> n;
    Punkt ** tab = new Punkt *[ n ]; //dynamiczna tablica tablic obiektow
    cout << "Podaj przedzial czasowy" << endl;
    cin >> x;
    system( "cls" );
    for( int i = 0; i < n; ++i )
         tab[ i ] = new Punkt[ n ];
   
    for( int i = 0; i < n; i++ )
    {
        for( int j = 0; j < n; j++ )
        {
            tab[ i ][ j ].ustaw_xy( i, j );
        }
    }
    tab[ n / 2 ][ n / 2 ].zaraz();
    while( true )
    {
        for( int i = 0; i < n; i++ )
        {
            for( int j = 0; j < n; j++ )
            {
                tab[ i ][ j ].wypisz_xy();
            }
            cout << endl << endl;
        }
        czekaj( x * 1000 );
        system( "cls" );
    }
    cin >> n;
}


void czekaj( int iMilisekundy ) //zegar
{
    clock_t koniec = clock() + iMilisekundy * CLOCKS_PER_SEC / 1000.0;
    while( clock() < koniec ) continue;
   
}
klasa.cpp
 
C/C++
#include <iostream>
#include "klasa.h"

using namespace std;

void Punkt::ustaw_xy( int n, int m ) // ustawia wspolrzedne i domyslny stan 1 - zdrowy
{
    x = n;
    y = m;
    stan = 1;
}
void Punkt::wypisz_xy() //wypisuje tablice
{
   
    if( stan == 1 )
         cout << "+";
    else if( stan > 1 || stan < 8 )
         cout << "-";
    else
         cout << "0";
   
}
void Punkt::zaraz() // zaraza pole stan 2-7
{
    stan = 2;
}
klasa.h
C/C++
#pragma once
#include <iostream>
using namespace std;

class Punkt
{
    int x;
    int y;
    int stan; //1 - zdrowa 2-7 zarazona 7-11 odporna
   
public:
    void ustaw_xy( int n, int m );
    void wypisz_xy();
    void zaraz();
};
P-123848
« 1 »
  Strona 1 z 1