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

Цикл,Строки,Массив - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Pirantel
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 8
31.03.2010, 22:52     Цикл,Строки,Массив #1
Народ,помогите пожалуйста выполнить лабы по программированию =)
3 лабы и в каждой по три задачи(кроме одномерных массивов) определенного типа: Цикл,Строки,Одномерный массив.

Цикл:
[IMG]http://s51.***********/i131/1003/dd/4f7c28855be7.png[/IMG]
Строковой тип:
1.Дана последовательность слов. Напечатать все слова последовательности, которые встречаются в ней по одному разу.
2.Дана строка символов. Подсчитать самую длинную последовательность подряд идущих букв а.
3.Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, в том порядке, в котором они встречаются в тексте.
Одномерный массив:
1.Есть ли в данном массиве два соседних положительных элемента? Найти номера первой (последней) пары.
Буду очень признателен,если прокоменнтируете код))) Огромное спасибо за внимание!)
Миниатюры
Цикл,Строки,Массив  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pirantel
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 8
01.04.2010, 15:14  [ТС]     Цикл,Строки,Массив #2
Может кто нибудь подможет???завтра а то уже надо сдавать( пожалуйста,откликнитесь кто нибудь) Буду очень признателен!
yanyk1n
 Аватар для yanyk1n
4325 / 1456 / 152
Регистрация: 12.03.2009
Сообщений: 5,310
01.04.2010, 16:01     Цикл,Строки,Массив #3
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
#include <iostream>
#include <cmath>
using namespace std;
 
int main()
{
    int N;
    cout << "N -> ";
    cin >> N;
    int * a = new int [N];
    int s = -1;
    int f = -1;
    for (int i = 0; i < N; i++)
    {
        cout << "A[" << i << "] -> ";
        cin >> a[i];
    }
    for (int i = 0; i < N-1; i++) if (a[i]>0 && a[i+1]>0)
    {
       s=i;
       break;
    }
    for (int i = N - 1 ; i > 0; i--) if (a[i]>0 && a[i-1]>0)
    {
       f=i;
       break;
    }
    if (s<0)
    {
       cout << "Таких пар нет" << endl;
    } else
    {
       cout << "Первая пара - " << a[s] << " и " << a[s+1] << endl;
       cout << "Последняя пара - " << a[f] << " и " << a[f-1] << endl;
    }
    return 0;
}
Добавлено через 7 минут
1)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
int main()
{
    int k;
    cout << "K -> ";
    cin >> k;
    long a, b, c;
    for (int n = 2; n < k; n++)
    {
        for (int m = n + 1; m < k; m++)
        {
            a = m*m - n*n;
            b = 2*m*n;
            c = m*m + n*n;
            cout << m << " " << n << " " << a << " " << b << " " << c << endl;
        }
    }
    return 0;
}
2009
2 / 2 / 0
Регистрация: 23.11.2009
Сообщений: 35
02.04.2010, 14:06     Цикл,Строки,Массив #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream.h>
#include<conio.h>
#include<math.h>
 
void main()
{ int n,x,a;
  float s;
  cin>>x>>n;
  a=x;
  for(int i=1;i<=n;i++) { s+=sin(x);
              x=x*a;}
  cout<<s;
  getch();
}
Pirantel
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 8
02.04.2010, 18:25  [ТС]     Цикл,Строки,Массив #5
Спасибо большое!))) Кто-нибудь помогите еще решить и строки))Был бы очень благодарен!
2Bik
4 / 4 / 2
Регистрация: 14.12.2009
Сообщений: 17
03.04.2010, 02:13     Цикл,Строки,Массив #6
Цитата Сообщение от Pirantel Посмотреть сообщение
Спасибо большое!))) Кто-нибудь помогите еще решить и строки))Был бы очень благодарен!
завтра днем напишу по строкам заданием, второе и третье точно, может и первое успею...
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9383 / 5433 / 916
Регистрация: 25.07.2009
Сообщений: 10,428
03.04.2010, 04:39     Цикл,Строки,Массив #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
 
/*  Дана строка символов. Подсчитать самую длинную последовательность подряд идущих букв а. */
 
int main(){
    std::string buf;
    size_t cnt = 0, max = 0;
    std::cout << "String: ";
    std::getline(std::cin, buf);
    for ( std::string::const_iterator i = buf.begin(); i != buf.end(); ++i ){
        if ( *i == 'a' )
            ++cnt;
        else {
            if ( cnt > max )
                max = cnt;
            cnt = 0;
        }
    }
    std::cout << "The maximum is long sequences of characters 'a' is equal " << max << std::endl;
    
    return 0;
}
Добавлено через 10 минут
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
#include <iostream>
#include <string>
#include <sstream>
#include <map>
 
/* 
*   Дана последовательность слов. Напечатать все слова последовательности, 
*   которые встречаются в ней по одному разу. 
*/
 
int main(){
    std::string buf, tmp;
    std::map<std::string, int> words;
    
    std::cout << "String: ";
    std::getline(std::cin, buf);
    
    std::istringstream ist(buf);
    while ( ist >> tmp )
        words[tmp] += 1;
    
    for ( std::map<std::string, int>::const_iterator i = words.begin(); i != words.end(); ++i )
        if ( i->second == 1 )
            std::cout << i->first << std::endl;
    
    return 0;
}
Добавлено через 23 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <algorithm>
    
/* 
    Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, 
    в том порядке, в котором они встречаются в тексте.
*/
 
int main(){
    std::string buf, result;
    
    std::cout << "String: ";
    std::getline(std::cin, buf);
    
    result = "";
    for ( std::string::const_iterator i = buf.begin(); i != buf.end(); ++i )
        if ( std::count(buf.begin(), buf.end(), *i) == 1 )
            result += *i;
    std::cout << "Result: " << result << std::endl;
    
    return 0;
}
Pirantel
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 8
05.04.2010, 14:57  [ТС]     Цикл,Строки,Массив #8
Большущее всем спасибо! =)) а никто не поможет решить эту задачку? =)
Миниатюры
Цикл,Строки,Массив  
pro100saniok
 Аватар для pro100saniok
40 / 40 / 4
Регистрация: 11.04.2010
Сообщений: 177
11.04.2010, 20:33     Цикл,Строки,Массив #9
Цитата Сообщение от easybudda Посмотреть сообщение
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
#include <iostream>
 
 
 
 
/* 
    Из заданной символьной строки выбрать те символы, которые встречаются в ней только один раз, 
    в том порядке, в котором они встречаются в тексте.
*/
 
int main(){
    std::string buf, result;
    
    std::cout << "String: ";
    std::getline(std::cin, buf);
    
    result = "";
    for ( std::string::const_iterator i = buf.begin(); i != buf.end(); ++i )
        if ( std::count(buf.begin(), buf.end(), *i) == 1 )
            result += *i;
    std::cout << "Result: " << result << std::endl;
    
    return 0;
}


можете перевести на код C#
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2010, 22:46     Цикл,Строки,Массив
Еще ссылки по теме:

Цикл и строки, очистка потока ввода C++
C++ Цикл с функцией и массив
C++ Как вернуть цикл на начало строки?
Цикл выходит за рамки строки C++
C++ Разбор строки через цикл

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

Или воспользуйтесь поиском по форуму:
Pirantel
0 / 0 / 0
Регистрация: 07.11.2009
Сообщений: 8
11.04.2010, 22:46  [ТС]     Цикл,Строки,Массив #10
И мне помогите доделать последнюю задачку то =))) Пожалуйста!
Yandex
Объявления
11.04.2010, 22:46     Цикл,Строки,Массив
Ответ Создать тему
Опции темы

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