Задача № 2 з програмування

Написати програму, що зчитує текстовий файл, кожний рядок якого містить повне ім’я якогось текстового файлу із масивом чисел. Потрібно знайти мінімальне та максимальне значення в кожному із файлів чисел та видати ці значення на друк. Файли чисел містять в рядках по одному числу.

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

void main()

{

ifstream fmain;

fmain.open("names.txt");

while(!fmain.eof())

{

string s;

fmain>>s;

ifstream f;

f.open(s);

int max = -100;

int min = 100;

int x;

while(!f.eof())

{

f>>x;

if(x>max)

max=x;

if(x<min)

min=x;

}

f.close();

cout<<"max="<<max;

cout<<"min="<<min;

}

fmain.close();

}


Задача № 3 з програмування

Написати програму, що зчитує два файли векторів чисел. У файлах 1-й рядок задає число елементів вектора, а в кожному наступному рядку – по одному числу компонента вектора. Програма зчитавши файли будує і виводить скалярний добуток векторів, якщо їх розмірності співпадають.

#include <iostream>

#include <fstream>

using namespace std;

void main()

{

ifstream f1;

ifstream f2;

f1.open("1.txt");

f2.open("2.txt");

int n1,n2;

int x1,x2;

f1>>n1;

f2>>n2;

if(n1!=n2)

return;

int res = 0;

while(!f1.eof())

{

f1>>x1;

f2>>x2;

res+=x1*x2;

}

cout<<res;

}


Задача № 4 з програмування

Написати програму, що зчитує текстовий файл, в якому 1-й рядок містить значення обмеження числа рядків у кожному із файлів, імена яких йдуть з 2-го рядка (по одному імені файлу у рядку). Програма має вивести перелік файлів, які мають більше вказаного числа рядків.

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

void main()

{

ifstream fmain;

fmain.open("names.txt");

int line_max;

fmain>>line_max;

while(!fmain.eof())

{

string s;

fmain>>s;

ifstream f;

f.open(s);

int k = 0;

string line;

while(!f.eof())

{

f>>line;

k++;

if(k>line_max)

{

cout<<s;

break;

}

}

f.close();

}

fmain.close();

}


Задача № 5 з програмування

Написати свій клас String роботи із символьними рядками. Мають бути методи: отримати розмір об’єкта класу, прописати об’єкт заданим символом, додати в кінець об’єкта заданий рядок.

#include<string.h>

#include<stdio.h>

class MyString

{

private:

char *str;

int length;

public:

MyString(char *);

MyString(MyString&);

~MyString();

int GetLength();

void print();

MyString operator+(MyString);

};

MyString::~MyString(){delete str;}

void MyString::print(){printf("%s",str);}

int MyString::GetLength(){return length;}

MyString::MyString(char *data){

length = strlen(data);

str = new char[length];

strcpy(str,data);

}

MyString::MyString(MyString &data){

length = strlen(data.str);

str = new char[length];

strcpy(str,data.str);

}

MyString MyString::operator+(MyString b){

length = strlen(str)+strlen(b.str);

char * temp = new char[length];

strcpy(temp,str);

strcat(temp,b.str);

delete str;

str = temp;

}



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: