Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Hi3iK
0 / 0 / 0
Регистрация: 14.03.2012
Сообщений: 2
#1

Два файла объединяются по принципу: строчка из одного, строчка из другого(2 задачи) - C++

14.03.2012, 21:46. Просмотров 531. Ответов 3
Метки нет (Все метки)

Всем доброго времени суток!
Помогите написать 2 программки.
Теоретически (по моему мнению) они довольно просты, но реализовать их, у меня не получается.
Помогите пожалуйста их написать.

1)Написать программу с использованием функции, вычисляющей наименьшее по модулю из чисел (от 3 до 5 чисел). Значение чисел задавать с использованием генератора случайных чисел (генератор уже есть, а вот модули чисел и их вычисления не могу сделать).

2)Два файла объединяются по принципу: строчка из одного, строчка из другого. Но первой из двух строчек берется та, которая короче. Результат записывается в первый файл (тут я вообще туплю что и как все делать).

Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2012, 21:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Два файла объединяются по принципу: строчка из одного, строчка из другого(2 задачи) (C++):

строчка - C++
переведите пожалуйста строку на паскаль for(int i=n; i>0; i-=len) res*=i;

Не понятная строчка - C++
#pragma comment(lib, "ws2_32.lib") что эта строчка делает ? я понял что она как то подключает ws2_32.lib но кто распишет ее...

Непонятная строчка кода - C++
for (p = 0; p < 12; p++) { for (v = 0; v < 50; v++) { if (x == y) { if (v >= 50) x = y; else x = y; break;...

не выводиться последняя строчка - C++
Ребят,кто знает,подскажите, вообщем у меня есть код. #include "stdafx.h" #include "iostream" #include "fstream" using namespace...

Что означает строчка ??? - C++
((i+j)%2==0?-1.0:1.0)); Скажите пожалуйста ,что означает эта строчка в С++?

Что означает строчка ??? - C++
Что озночает строчка double *x = new double; Заранее спасибо

3
MrCold
855 / 753 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
15.03.2012, 12:12 #2
2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include <iostream>
#include <fstream>
#include  <string>
//  FSIZE  КОЛИЧЕСТВО СТРОК 
// В  КАЖДОМ  ФАЙЛЕ С КОТОРОГО СЧИТЫВАЕМ 
#define FSIZE 5   // УСТАНОВИТЕ     СКОЛЬКО    НУЖНО  
 
 int main(){
     size_t j = 0;                 
     size_t i = 0;
     std::string *datafile1 = NULL;
     std::string *datafile3 = NULL;
     std::string *datafile2 = NULL;
        datafile1 = new std::string[FSIZE];
        datafile2 = new std::string[FSIZE];
 
     std::cout << "Text from first file :\n" << std::endl;
 
     std::ifstream fileOne;
     fileOne.open("fileOne.txt");
     if(!fileOne) std::cout << "Error in opening file -'fileOne'\n";
     //////////////////////////////////////////////////////////////////
     //  ПЕРВЫЙ ФАЙЛ В МАССИВ 
     //              ВЫВОД НА ЭКРАН 
 
     else{
     while(!fileOne.fail() && i < FSIZE){
      getline(fileOne,datafile1[i]);
      std::cout << datafile1[i] << std::endl;
      i++;}}
     fileOne.close();
     i = 0;
         std::cout << "\nText from second file :\n" << std::endl;
     
     std::ifstream fileTwo("fileTwo.txt");
     if(!fileTwo) {std::cout << "Error in opening file -'fileTwo'\n";}
     //////////////////////////////////////////////////////////////////
     //  ВТОРОЙ ФАЙЛ ВО ВТОРОЙ МАССИВ 
     //              ВЫВОД НА ЭКРАН 
 
     else{
         
     while(!fileTwo.fail() && i < FSIZE){
      getline(fileTwo,datafile2[i]);
      std::cout << datafile2[i] << std::endl;
     i++;}
 
     }
     fileTwo.close();
     /////////////////////////////////////////////////////////////
     //  ДВА МАССИВА В ТРЕТИЙ МАССИВ 
    
      j = 0;
     size_t j2 = 1;
 
        datafile3 = new std::string[FSIZE * 2];
 
     for(i = 0; i < FSIZE ; i++,j += 2,j2 += 2)
 
         if(datafile1[i].size() < datafile2[i].size() ) {
 
              datafile3[j] = datafile1[i]; 
              datafile3[j2] = datafile2[i]; 
                                              }
      else{
             datafile3[j] = datafile2[i]; 
             datafile3[j2] = datafile1[i]; }
 
       /////////////////////////////////////////////////////////////
     //              ВЫВОД НА ЭКРАН ТО ЧТО ЗАПИШЕТСЯ  В ФАЙЛ
 
       std::cout << "\n\nText for rewriting :\n" << std::endl;
 
             for(j = 0; j < FSIZE * 2 ; j++){
                 std::cout << datafile3[j];
                 std::cout << std::endl;    }   
 //////////////////////////////////////////////////////////////////
     // ПЕЗАПИСЬ  
      std::ofstream outfile("fileOne.txt");
     
           for(j = 0; j < FSIZE * 2 ; j++){
                  outfile  << datafile3[j] << std::endl;}           
         
     outfile.close();
 
     delete[]datafile1;
     delete[]datafile2;
     delete[]datafile3;
     std::cout <<std::endl;
 
system("pause");
 
    return 0;
 }
0
MrCold
855 / 753 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
15.03.2012, 12:19 #3
Изображение
0
Миниатюры
Два файла объединяются по принципу: строчка из одного, строчка из другого(2 задачи)  
Hemull
47 / 47 / 1
Регистрация: 12.03.2012
Сообщений: 108
15.03.2012, 12:32 #4
1. как-то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <math.h>
using namespace std;
 
int minmod(int,int,int);
int main()
{
        int a,b,c,x,y,z,res;
        a=rand()%20+(-20);
        b=rand()%20+(-20);
        c=rand()%20+(-20);
        x=abs(a);
        y=abs(b);
        z=abs(c);
        res=minmod(x,y,z);
 
        cout<<res<<endl;
        system("pause");
}
 
int minmod(int x, int y, int z)
{
        int min=0;
        if (x<y) min=x; else min=y;
        if (z<min) return z; else return min;
}
Добавлено через 1 минуту
если по заданию нужно, что модуль вычислялся непосредственно в функции, перенесите строки 12-14 туда и передавайте не xyz а abc
0
15.03.2012, 12:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.03.2012, 12:32
Привет! Вот еще темы с ответами:

Пропускается строчка getline - C++
В коде есть такой фрагмент, но при его выполнении программа пропускает выполнение первого ожидания ввода строки и сразу переходит ко второй...

Что означает эта строчка? - C++
cout&lt;&lt;MyClass::addn(2)&lt;&lt;endl;

Что значит строчка в коде - C++
Всем привет! что может значить след. строчки в коде? jn = (j&gt;0)?(j-1):(LY-1) jp = (j&lt;LY-1)?(j+1):(0) LY - задано, j -...

Что означает следующая строчка? - C++
Подскажите пожалуйста, что означает строчка: byte szch; ...//тут запихиваем в szch и szch какие-то цифры short...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru