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

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

Войти
Регистрация
Восстановить пароль
 
 
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
#1

из четырех строк образует две строки по правилу c++ - C++

27.09.2013, 22:53. Просмотров 536. Ответов 15
Метки нет (Все метки)

писать процедуру, которая из четырех строк образует две строки по правилу: (x,y,a,b)
x=(a1,a2,...,a8,x9,x10,...,x20);
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.09.2013, 22:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос из четырех строк образует две строки по правилу c++ (C++):

Если количество строк в массиве четное, то поменять строки массива по правилу - C++
1)Если количество строк в массиве четное, то поменять строки массива по правилу: первую строку со второй, третью с четвертой и т.д. Если...

Если количество строк в матрице четное, то поменять строки местами по правилу - C++
Помогите с задачей !!!!!! Создать квадратную матрицу целых чисел: - массив заполнить случайными значениями с помощью генератора...

Дан текстовый файл. Вывести на экран среднюю строку (две строки, если четное количество строк) - C++
Дан текстовый файл. Вывести на экран среднюю строку (две строки, если четное количество строк).

Описать процедуру, которая образует строки по правилу - Pascal ABC
Описать процедуру ,которая из четырех строк образует две строки по правилу: (x,y,a,b) x=(a1,a2,...,a8,x9,x10,...,x20); ...

Начиная с первой строки сдвинуть все строки на две вниз, а последние две перенести на место первых двух строк - Turbo Pascal
Используя Procedure Swap!

Если количество строк в массиве четное, то поменять строки местами по правилу - Pascal ABC
Первую строку - со второй, третью - с четвертой и т.д. В противном случае оставить все без изменений.

15
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
28.09.2013, 13:12 #2
что не получается?
1
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
28.09.2013, 14:47  [ТС] #3
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).
у меня ставит элементы b[6..11]
попробовала другой счетчик для b но не выходит

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
#pragma argsused
int main(int argc, char* argv[])
{ char  a[20], b[20] ,x[20],y[20]         ;
 
cout<< "a = (20 simbol)\n" ;
for (int i=1;i<=20;i++)
cin >>a[i];
cout<<"\nb = (20 simbol)\n" ;
for (int i=1;i<=20;i++)
cin >>b[i];
cout<<"\nx = (20 simbol)\n" ;
for (int i=1;i<=20;i++)
cin >>x[i];
cout<<"\ny = (20 simbol)\n" ;
for (int i=1;i<=20;i++)
cin >>y[i];
 cout<<"\n new x = \n";
 for (int i=1;i<=20;i++){
 if (i>=1 && i<=9)    x[i]=a[i];
 cout<<x[i]<<" ";}
  cout<<"\n new y = \n";
 for (int i=1;i<=20;i++){
 if (i>=6 && i<=11)    y[i]=b[i];
 cout<<y[i]<<" ";}
        getch();
        return 0;
}
1
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3139 / 307
Регистрация: 04.12.2011
Сообщений: 8,661
Записей в блоге: 5
28.09.2013, 16:13 #4
Цитата Сообщение от Жанерке Посмотреть сообщение
for (int i=1;i<=20;i++)
Почему с 1-цы начинаете индексировать?
<= на < замените.
А что сделать хотите?
0
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
28.09.2013, 17:06  [ТС] #5
IGPIGP,
писать процедуру, которая из четырех строк образует две строки по правилу: (x,y,a,b)
x=(a1,a2,...,a8,x9,x10,...,x20);
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).

вот задача выглядит так , поэтому с 1-цы
0
recoder
130 / 130 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
28.09.2013, 18:07 #6
Можно через string:


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
#include <iostream>
#include <string>
 
using std::string;
 
void Str(string x, string y, string a, string b);
 
int main()
{
    string a = "Hello";
    string b = "Hai";
    string x = "Privet";
    string y = "Null";
 
    std::cout << a << std::endl;
    std::cout << b << std::endl;
    std::cout << x << std::endl;
    std::cout << y << std::endl;
    Str(x, y, a, b);
}
 
void Str(string x, string y, string a, string b)
{
    string c1 = a + x;
    string c2 = y + b;
    std::cout << c1 << std::endl;
    std::cout << c2 << std::endl;
}
1
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
28.09.2013, 18:27  [ТС] #7
мне нужно что бы вышло так:
x=(a1,a2,...,a8,x9,x10,...,x20);
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).
0
recoder
130 / 130 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
28.09.2013, 18:57 #8
Так нужно??

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
#include <iostream>
 
void Str(char *a, char *x, char *y, char *b);
 
int main()
{
    char a[20], b[20], x[20], y[20];
 
    // Вводим а
    std::cout << "Введите ровно 19 символов a: ";
    std::cin >> a;
 
    // Вводим b
    std::cout << "Введите ровно 19 символов b: ";
    std::cin >> b;
 
    // Вводим x
    std::cout << "Введите ровно 19 символов x: ";
    std::cin >> x;
 
    // Вводим y
    std::cout << "Введите ровно 19 символов y: ";
    std::cin >> y;
 
    // Функция
    Str(a, x, y, b);
}
 
void Str(char *a, char *x, char *y, char *b)
{
    // Выводим x
    std::cout << "X = ";
    for (int i = 0; i < 8; i++)
        std::cout << a[i];
    for (int i = 8; i < 20; i++)
        std::cout << x[i];
    std::cout << std::endl;
    std::cout << "Y = ";
    // Выводим y
    for (int i = 0; i < 5; i++)
        std::cout << y[i];
    for (int i = 0; i < 6; i++)
        std::cout << b[i];
    for (int i = 11; i < 20; i++)
        std::cout << y[i];
}
1
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
05.10.2013, 17:40  [ТС] #9
писать процедуру, которая из четырех строк образует две строки по правилу: (x,y,a,b)
x=(a1,a2,...,a8,x9,x10,...,x20);
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).

помогите решить плииз(((

я решила с помощью цикла, а мне надо решить эту задачу использую функцию но как сделать я не знаю
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3139 / 307
Регистрация: 04.12.2011
Сообщений: 8,661
Записей в блоге: 5
05.10.2013, 18:45 #10
Жанерке, трудность в том, что не ясно, что нужно сделать. Строки и массивы это не всегда одно и тоже. Скобки при чем? Что такое x= и у=... Подумайте и задайте вопрос по-другому. Можно задание дословно положить, например. А вот это непонятно вообще:
Цитата Сообщение от Жанерке Посмотреть сообщение
писать процедуру, которая из четырех строк образует две строки по правилу: (x,y,a,b)
x=(a1,a2,...,a8,x9,x10,...,x20);
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).
Правило правильней править правильно.
0
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
05.10.2013, 18:52  [ТС] #11
IGPIGP,
16. Описать процедуру, которая из четырех строк образует две строки по правилу: (x,y,a,b)
x=(a1,a2,...,a8,x9,x10,...,x20);
y=(y1,y2,...,y5,b1,...,b6,y12,...,y20).



вот таки задано задание .

не важно каким методом решать (string или char массив)
суть в том что надо использовать функцию
(
C++
1
2
3
4
  void(char *a){
...................................
..........................
return a;}
)

типо этого
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3139 / 307
Регистрация: 04.12.2011
Сообщений: 8,661
Записей в блоге: 5
05.10.2013, 18:57 #12
Цитата Сообщение от Жанерке Посмотреть сообщение
не важно каким методом решать (string или char массив)
суть в том что надо использовать функцию
Это не то. Вы бы сказали:
Исходные данные:
массив, тип, описание
и
массив, тип, описание
Задание:
получить массив, тип, описание

Понимаете? Посмотрите на свой вопрос глазами человека, который не видел условия Вашей задачи.
Напишите то, что нужно и сразу получите ответ.
1
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
05.10.2013, 19:13  [ТС] #13
IGPIGP,
дано 4 char массива из 20 символ
a[20]={a1,a2,a3,a4,......a20}
b[20]={b1,b2,b3,..........b20}
x[20]={x1,x2,x3............x20}
y[20]={y1,y2,y3,y4,......y20}

массивы вводим с клавиатуры
надо написать функцию который возвращает X и Y
должно равно
x[20]={a1,a2,a3,a4,...a8,x9,x10,x11........x20}
y[20]={y1,y2,y3,y4,y5,b1,b2,b3,b4,b5,b6,y12,y13,y14.......y20}
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3139 / 307
Регистрация: 04.12.2011
Сообщений: 8,661
Записей в блоге: 5
05.10.2013, 19:44 #14
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
#include <iostream>
#include <windows.h>
using namespace std;
void 
mu_to_ta_ta_ta(
char *x, char *y, char *a, char *b, int n, int x_marg_min, int x_marg_max, int y_marg_min, int y_marg_max
){
cout<<"\n new x = \n";
 for (int i=0;i<n;i++){
 if (i>x_marg_min && i<x_marg_max)    x[i]=a[i];//8 элементов a1...a8
cout<<x[i]<<" ";}
cout<<"\n new y = \n";
  int cnt_b=0;
 for (int i=0;i<n;i++){
 if (i>x_marg_min && i<y_marg_max) y[i]=b[cnt_b++];
cout<<y[i]<<" ";}
}
 
int main(int argc, char* argv[]){ 
SetConsoleCP (1251); SetConsoleOutputCP (1251);
const int n = 3;//3 - для прогона, напишите 20 и будет 20 элементов)
    char a[n], b[n] ,x[n] ,y[n]         ;
    
int x_marg_min=-1;  
int x_marg_max=8;
int y_marg_min=4;
int y_marg_max=11;
 
cout<< "a = (" << n <<" simbol)\n" ;
for (int i=0;i<n;i++)
cin >>a[i];
cout<<"\nb = (" << n <<" simbol)\n" ;
for (int i=0;i<n;i++)
cin >>b[i];
cout<<"\nx = (" << n <<" simbol)\n" ;
for (int i=0;i<n;i++)
cin >>x[i];
cout<<"\ny = (" << n <<" simbol)\n" ;
for (int i=0;i<n;i++)
cin >>y[i];
 
mu_to_ta_ta_ta(x, y, a, b, n, x_marg_min, x_marg_max, y_marg_min, y_marg_max);
 
        cout << endl;
system("pause");   
return 0;
}
Внутрь не всматривался, но внешне, это так может выглядеть.
1
Жанерке
34 / 34 / 2
Регистрация: 22.09.2013
Сообщений: 170
05.10.2013, 20:21  [ТС] #15
IGPIGP, рахмеееет))))) спасибоооо))))
0
05.10.2013, 20:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2013, 20:21
Привет! Вот еще темы с ответами:

Если количество строк в массиве четное, то поменять строки местами по правилу - C#
Если количество строк в массиве четное, то поменять строки местами по правилу: первую строку со второй, третью - с четвертой и т.д. Если ...

Сформировать двумерный массив по следующему правилу: количество строк массива считывается с 2 позиции 3 строки - Pascal ABC
№ 21. Дан текстовой файл, сформированный по следующему правилу: первые две строки содержат текстовую информацию, 3-я и 4-я строка содержат...

Добавление строк в файл через каждые две строки - C#
Доброго времени суток.Есть txt файл в котором n количество строк записаны в столбик,через каждые 2 строки нужно вставить слово &quot;Проверено&quot;....

Поменять местами две средних строки, если количество строк четное, и первую со средней строкой, если количество строк нечетное - Turbo Pascal
поменять местами двесредних строки, если количество строк четное, и первую со средней строкой, если количество строк нечетное


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

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

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