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

Лаба по Символьной информации - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Произвести выравнивание по правому краю введенного текста http://www.cyberforum.ru/cpp-beginners/thread203665.html
помогите пожалуйста!!!! срочно надо!! задача №1. Произвести выравнивание по правому краю введенного текста, для чего к каждой строке применить функцию WIDE(str,k), которая равномерно вставляет пробелы между словами так, чтобы длина строки str стала равной k. (Величина k должна быть больше длины самой длинной строки текста.) задача №2. Напишите программу, определяющую, является ли введенная...
C++ В массиве B(n) каждый элемент,кроме первого, заменить суммой всех предедущих элементов Доброго времени суток,прошу помочь мне в решении нескольких задач. Задача № 1 В массиве B(n) каждый элемент,кроме первого, заменить суммой всех предедущих элементов Задача № 2 Дан двумерный массив размером gxt, заполненный случайными числами.Определить,есть ли в данном массиве строка,содержащая больше положительных элементов,чем отрицательных. Зарание огромное спасибо! http://www.cyberforum.ru/cpp-beginners/thread203649.html
Местонахождение точки C++
Ввести координаты (х,у) вершин многоугольника (за часовой стрелкой), и координаты отдельной точки. Найти место нахождение етой точки (Внутри многоугольника, снаружи, или на ребре). Язык С. Можна просто алгоритм, а потом я уже и сам. П.С. А можно и код программы))))
C++ Не получается разобраться Visual C++
Привет всем помогите пожалуйста кто может у меня такая проблема не могу решить задачи по C++ Работа со строками. В строке, содержащей последовательность слов, найти конец предложения, обозначенный символом "точка". Если в следующем слове первый символ – строчная буква, то заменить ее на прописную. У меня почти получилось, но в слове "точка." заменяется на главную только первая буква...
C++ Кто может помочь с Лабой на С++,я не могу написать(( http://www.cyberforum.ru/cpp-beginners/thread203636.html
Тема Операторы ВЫбора вариант 4. Для целого числа k от 1 до 99 напечатать фразу «мне k лет», учитывая при этом, что при некоторых значениях k слово «лет» следует заменить на слово «год» или «года». Вывести результат на экран по образцу: введите число 15 *********** мне 15лет
C++ вычислить выражение Здравствуйте! Если есть у вас свободное время помогите с прогой. Заранее спасибо! подробнее

Показать сообщение отдельно
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
05.12.2010, 12:06     Лаба по Символьной информации
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <ctype.h>
 
int main(void)
{
    int ch;
 
    while ((ch = getchar()) != EOF && toupper(ch) != 'Q')
        if (isdigit(ch))
            printf("digit" "\n");
        else if (ispunct(ch))
            printf("punctuation" "\n");
        else if (isalpha(ch))
            printf("letter: %d" "\n", tolower(ch) - 'a' + 1);
        else
            printf("unknown" "\n");
    
    return 0;
}
Код
[guest@localhost tests]$ ./t
lkjasdf1239487!@#$jk
letter: 12
letter: 11
letter: 10
letter: 1
letter: 19
letter: 4
letter: 6
digit
digit
digit
digit
digit
digit
digit
punctuation
punctuation
punctuation
punctuation
letter: 10
letter: 11
unknown
Q
[guest@localhost tests]$
Добавлено через 1 минуту
Цитата Сообщение от Kastaneda
Странно, у меня были случаи, что так не работало.
если сделать несколько if'ов, не будет работать
тут один if ... else if ... else ...
тело цикла (и не только цикла), если содержит один оператор, может не заключаться в фигурные скобки

Цитата Сообщение от Kastaneda
помимо прочего всегда выводится unknown.
что-то не верится, что прямо всегда
может выводиться, когда пытаешься русские буквы вводить
но цифры и знаки должны срабатывать нормально
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru