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

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

Войти
Регистрация
Восстановить пароль
 
meter
СтудентЪ из Кызылорды
25 / 23 / 5
Регистрация: 02.10.2009
Сообщений: 144
#1

Лабораторки - C++

29.01.2010, 09:16. Просмотров 704. Ответов 2
Метки нет (Все метки)

Только начинаю изучать этот язык, прошу помочь со следующими заданиями
1) Распечатать введенную строку, заменив строчные буквы, прописными и повторив дважды каждую цифру.
2) Определить в одномерном числовом массиве число соседств из взаимно обратных чисел
3) Подсчитать, сколько раз во введенном тексте встречается слово «no» . Слова в тексте разделяются пробелами.
4) Дана матрица размерностью mxn. Напечатать матрицу, состоящую из наибольших элементов строк.
5) Общее число вхождений символов +, -, * в последовательность s1, …, sn.
6) Из введенного текста распечатать только те слова, которые симметричны (RADAR, ANNA), либо в которых буквы упорядочены в порядке, обратном алфавитному (TOK, ZONE).
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2010, 09:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Лабораторки (C++):

Строки и файлы(2 лабораторки) - C++
2 задачи! 1. Лабораторная работа № 5 "Строки" Цель: Изучение символьных и строковых переменных и способов их обработки в...

не могу сделать лабораторки по инфе на языке C++ - C++
помогите не получаются лабы по инфе!!! Посмотрите кто может помочь я 8 вариант! просто сроки поджимают а надо сдать 7 лабораторок по...

лабораторки - Delphi
1 - Найти все простые несократимые дроби, заключенные между 0 и 1, знаменатели которых не привышают n (дробь задается двумя натуральными...

И сново лабораторки) - QBasic
1. В массиве C (3,6) найти произведение элементов 2ой строки, больших 10. и 2. Подсчитать количество слогов в произвольно заданном...

Ребят надежда на вас! 4 лабораторки! - VBA
Задания для самостоятельной работы Лабораторная работа № 1. Разработка алгоритмов 1. Разработайте алгоритмы для нахождения: -...

подскажите практикум/лабораторки по HTML и CSS - HTML, CSS
:):):)

Строки и файлы(2 лабораторки) - C++
2 задачи! 1. Лабораторная работа № 5 "Строки" Цель: Изучение символьных и строковых переменных и способов их обработки в...

не могу сделать лабораторки по инфе на языке C++ - C++
помогите не получаются лабы по инфе!!! Посмотрите кто может помочь я 8 вариант! просто сроки поджимают а надо сдать 7 лабораторок по...

лабораторки - Delphi
1 - Найти все простые несократимые дроби, заключенные между 0 и 1, знаменатели которых не привышают n (дробь задается двумя натуральными...

И сново лабораторки) - QBasic
1. В массиве C (3,6) найти произведение элементов 2ой строки, больших 10. и 2. Подсчитать количество слогов в произвольно заданном...

Ребят надежда на вас! 4 лабораторки! - VBA
Задания для самостоятельной работы Лабораторная работа № 1. Разработка алгоритмов 1. Разработайте алгоритмы для нахождения: -...

подскажите практикум/лабораторки по HTML и CSS - HTML, CSS
:):):)


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

Или воспользуйтесь поиском по форуму:
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
easybudda
Модератор
Эксперт CЭксперт С++
9623 / 5571 / 946
Регистрация: 25.07.2009
Сообщений: 10,696
29.01.2010, 10:14 #2
1. Описание стандартных функций fgets(), strrchr(), isdigit() и toupper() в любом справочнике найдёте
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 <ctype.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
    
/*
    Распечатать введенную строку, заменив строчные буквы, прописными и повторив дважды каждую цифру.
*/
#define STRLEN 128 /* максимальная длинна строки + '\0' */
int main(void){
    char str[STRLEN], *p;
    printf("String: ");
    if ( !fgets(str, STRLEN, stdin) )
        exit(1); /* выйти, если не удалось прочитать строку */
    if ( p = strrchr(str, '\n') )
        *p = '\0'; /* удаление \n */
    if ( !*str )
        exit(1); /* выход, если строка пустая */
    for ( p = str; *p; ++p ){ /* цикл по str */
        if ( isdigit(*p) )
            putchar(*p);
        putchar(toupper(*p));
    }
    
    exit(0);
}
Добавлено через 21 минуту
3. см. описание strtok() и strcmp()
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 <stdio.h>
#include <string.h>
#include <stdlib.h>
 
/* 
    Подсчитать, сколько раз во введенном тексте встречается слово «no» . 
    Слова в тексте разделяются пробелами.
*/
 
#define STRLEN 128
#define TESTWORD "no"
    
int main(void){
    char str[STRLEN], *p;
    int cnt;
    printf("String: ");
    if ( !fgets(str, STRLEN, stdin) )
        exit(1);
    for ( cnt = 0, p = strtok(str, " "); p != NULL; p = strtok(NULL, " ") )
        if ( !strcmp(p, TESTWORD) )
            ++cnt;
    
    printf("Word \"%s\" meet %d times.\n", TESTWORD, cnt);
    
    exit(0);
}
1
zarko97
276 / 36 / 0
Регистрация: 11.10.2015
Сообщений: 381
20.03.2017, 23:55 #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
// Из введенного текста распечатать только те слова, которые симметричны (RADAR, ANNA), 
// либо в которых буквы упорядочены в порядке, обратном алфавитному (TOK, ZONE).  
 
std::string symb = "!@#$%^&*()_+][}{\'\"|;:/?.>,<~";
std::function<bool(char)> punctuation = [](char c)
{
    return (std::find(symb.begin(), symb.end(), c) != symb.end()) ? true : false;
};
 
bool isPal(std::string& some)
{
    some.erase(std::remove(some.begin(), some.end(), ' '), some.end());
    auto beg = some.begin(), end = some.end();
    while (beg != end && beg != --end) {
        if (*beg++ != *end) 
            return false;
    }
    return true;
}
 
void print_palindrom(std::string& some)
{
    some.erase(std::remove_if(some.begin(), some.end(), punctuation), some.end());
    std::istringstream iss{ some };
    std::copy_if(std::istream_iterator<std::string>(iss),
                 std::istream_iterator<std::string>(), 
                 std::ostream_iterator<std::string>(std::cout, " "),
                 [](std::string s) { return isPal(s) || std::is_sorted(s.begin(), s.end(), std::greater<char>()); }
    );
}
0
Ответ Создать тему
Опции темы

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