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

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

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

Строки\файлы\функции Всего по-немногу - C++

24.05.2009, 21:29. Просмотров 418. Ответов 0
Метки нет (Все метки)

1. Ввод-вывод членов последовательности (с использованием как клавиатуры и экрана, так и файлов).
16. Даны натуральное число n, символы s1, ... , sn. Известно, что в последовательность s1, ... , sn входит по крайней мере один пробел. Пусть m таково, что sm—это первый по порядку пробел, входящий в s1, ... , sn (m заранее неизвестно). Выполнить преобразования а), б), в),
а) sm+1, sm+2, … , sn, s1, … , sm;
б) sm+1, sm+2, … , sn, sm, … , s1;
в) sn, sn-1, … , sm+1, s1, … , sm.

Я написал вот это. Но он не компилируется это 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
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include <conio.h>
#include <fstream>
#include <iostream>
using namespace std;
void format();
char keyboard(); //îáüÿâëåГ*ГЁГҐ ââîäГ* Г± ГЄГ«Г*ГўГ»
int infile(); //Èç ГґГ*éëГ*
char symbline[50];
void main()
{
    int A;
    cout << "Push 1 for write on keyboard\n";
    cout << "Push 2 for read in file\n";
    cout << "Push 0 for exit\n";
    cin >> A;
 
switch(A)
 {
            case 1: keyboard();
                    break;
            case 2: infile();
                    break;
            case 0:  return;
                    break;
            default: cout << "Try again\n";
        }
format();
    
  getch();
}
 
int findspace(char str[50], int size)
{
  int count = 0;
  
  for (int i = 0; i < size; i++) //ïîèñê ïðîáåëГ*
    if (str[i] == ' ')
    {
        count=i;
        break;
    }
  
  return count; //âîçâðГ*ГёГ*ГҐГІ ГЁГ*ГІ Г*îìåð ïðîáåëГ*
}
 
 
char keyboard()
 {
  //char  symbline[50];
  cout <<"VVedite stroky, \n" << endl;
  gets(symbline); //ñ÷èòûâГ*ГҐГІ ñòðîêó
  return symbline[50];
  
}
void format()
{
    //char symbline[50];
 
  int linelength = strlen(keyboard()); //Г°Г*çìåð ñòðîêè
  int space,i;
  if (findspace(symbline,linelength) == 0) //ïðîâåðêГ* Г*Г* Г*Г*ëè÷èå ïðîáåëîâ
      cout <<"He BepHo";
  else
  {
      cout << "Space - " << findspace(symbline,linelength)+1 << endl;
      space = findspace(symbline,linelength)+1;
  }
 
  //1
  for(i=space; i<linelength; i++) //c ïðîáåëГ* äî ïîñëåäГ*ГҐГЈГ®
      cout << symbline[i];
  cout << "   ";
  for(i=0; i<space; i++)//Г± ïåðâîãî äî ïðîáåëГ*
      cout << symbline[i];
  cout << "\n";
//2
    for(i=space; i<linelength; i++) //c ïðîáåëГ* äî ïîñëåäГ*ГҐГЈГ®
      cout << symbline[i];
  cout << "   ";
  for(i=space-2; i>=0; i--)//Г± ïðîáåëГ* äî ïåðâîãî
      cout << symbline[i];
  cout << "\n";
  //3
    for(i=linelength-1; i>=space; i--) //c ïîñëåäГ*ГҐГЈГ® äî ïðîáåëГ*
      cout << symbline[i];
  cout << "   ";
  for(i=0; i<space; i++)//Г± ïåðâîãî äî ïðîáåëГ*
      cout << symbline[i];
  cout << endl;
}
 
 
int infile()
{
    char ch;
 
    ifstream in("test1.txt", ios::in | ios::binary);
    if(!in)
    {
        cout << "NOT OPEN\n";
        return 1;
    }
    while(in)
    {in.get(ch);
    if(in) cout << ch;
    }
    in.close();
    getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2009, 21:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Строки\файлы\функции Всего по-немногу (C++):

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

Добавить в код любые пользовательские функции (лучше всего - функции ввода/вывода) - C++
Ребят, прошу вас помочь добавить любые две функции, лучше всего если ввод и вывод, но например и за два void input буду очень благодарен...

Как эффективнее всего реализовать считывание нужной строки? - C++
Всем привет! Нужно считать определенную строку в файле, допустим 5-ую. Как эффективнее всего это реализовать?

Вызов функции сразу для массива всего классов - C++
Добрый день. Я делаю класс Pixel, и в этом классе есть функция Draw(); Так вот я создаю массив этих классов. Вопрос: Как мне...

Определить номер строки в которой больше всего гласных букв - C++
Задание: 1) Скопировать из файла F1 в файл F2 все строки, кроме той, в которой больше гласных. 2) Вивести номер этой строки. код: ...

Вычислить значение функции y для x=a(h)b - получается всего один результат - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;math.h&gt; using namespace std; int main() { double y,x, a, b, h; x=1; ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.05.2009, 21:29
Привет! Вот еще темы с ответами:

Определить номер той строки, в которой больше всего согласных букв - C++
Переведите, пожалуйста: Uses CRT; Var f,f2:text; s,s2:string; i,l,n1,n2,n,max,ind,c:integer; begin ...

Среди цифр введенной строки вывести на экран ту которая встречалась чаще всего - C++
Среди цифр введенной строки вывести на экран ту которая встречалась чаще всего, если таких цифр несколько, то вывести ту которая попалась...

Дан двумерный массив. Найти номер строки, где больше всего нулей. - C++
Дан двумерный массив. Найти номер строки, где больше всего нулей. Помогите пожалуйсто, больше не на кого положиться. При Многом благодарен)

Массив: Найти номер строки матрицы, в которой больше всего единичных элементов. - C++
Дана квадратная матрица А порядка n. Найти номер строки матрицы, в которой больше всего единичных элементов.


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

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

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