Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <iomanip>
- #include <string>
- #include <stdio.h>
- #include <stdlib.h>
- using namespace std;
- const int dydis = 100;
- void skaitymas(int Laivai[][dydis], int &d, int LaivuKiekiai[],int NepavykoKiekiai[]);
- void isvedimas(int Laivai[][dydis], int d, int NepavykoKiekiai[]);
- int pildymas(int Laivai[][dydis],int d, int ilgis);
- void formavimas(int Laivai[][dydis], int d, int LaivuKiekiai[],int NepavykoKiekiai[]);
- int main()
- {
- int Laivai[dydis][dydis], LaivuKiekiai[4], NepavykoKiekiai[4], d;
- skaitymas(Laivai, d, LaivuKiekiai, NepavykoKiekiai);
- formavimas(Laivai, d, LaivuKiekiai, NepavykoKiekiai);
- isvedimas(Laivai, d, NepavykoKiekiai);
- return 0;
- }
- void skaitymas(int Laivai[][dydis], int &d, int LaivuKiekiai[], int NepavykoKiekiai[]) {
- ifstream fd ("Duomenys.txt");
- fd >> d;
- for (int i = 0; i < 4; i++){
- fd >> LaivuKiekiai[i];
- NepavykoKiekiai[i] = 0;
- }
- for (int i = 0; i < d; i++){
- for (int j = 0; j < d; j++){
- Laivai[i][j] = 0;
- }
- }
- }
- void formavimas(int Laivai[][dydis], int d, int LaivuKiekiai[], int NepavykoKiekiai[]){
- for (int i = 0; i < 4; i++){
- int kiekis = LaivuKiekiai[i];
- for (int j = 0; j < kiekis; j++){
- int rez = pildymas(Laivai, d, i+1);
- if (rez == 0){
- NepavykoKiekiai[i]++;
- }
- }
- }
- }
- int pildymas(int Laivai[][dydis], int d, int ilgis){
- int x = rand() % d;
- int y = rand() % (d - ilgis);
- for (int j = 0; j < ilgis; j++){
- if (Laivai[x][y+j] != 0){
- return 0;
- }
- }
- for (int j = 0; j < ilgis; j++){
- Laivai[x][y+j] = ilgis;
- }
- return 1;
- }
- void isvedimas(int Laivai[][dydis], int d, int NepavykoKiekiai[]){
- ofstream fr ("Rezultatai.txt");
- for (int i = 0; i < d; i++){
- for (int j = 0; j < d; j++){
- fr << fixed << setprecision(2) << Laivai[i][j] << "";
- }
- fr << fixed << setprecision(2) << endl;
- }
- fr << fixed << endl<< "Nepavyko suformuoti:" << endl;
- fr << fixed << "Vienviečių: " << NepavykoKiekiai[0] << endl;
- fr << fixed << "Dviviečių: " << NepavykoKiekiai[1] << endl;
- fr << fixed << "Triviečių: " << NepavykoKiekiai[2] << endl;
- fr << fixed << "Keturviečių: " << NepavykoKiekiai[3] << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment