Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
1 / 1 / 2
Регистрация: 26.10.2015
Сообщений: 22
1

Функции на проверку чисел, календарной даты и палиндрома

26.10.2015, 15:43. Показов 1139. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, господа.
Есть одна проблема.
В иностранном учебнике есть такое задание, перевожу:
"Нужно написать программу для простой обработки слов из текста. В программе должны быть функции на проверку чисел, календарной даты и палиндрома. Текстом является стандартный ввод(stdin). Файл должен читаться по слову с помощью спецификатора %s функции scanf."
У нас есть текст:
Код
$ cat data.txt
Hello, world!
Created on 2015-08-26
having 13 words out of which 8 = 4+4 contains o.
После выполнения программы текст должен выглядеть так:
Код
$ ./proj1 <data.txt
word: Hello,
word: world!
word: Created
word: on
date: Wed 2015-08-26
word: having
number: 13 (prime)
word: words
word: out
word: of
word: which
number: 8
word: = (palindrome)
word: 4+4 (palindrome)
word: contains
word: o.
Господа, пожалуйста, помогите с выполнением этого задания или направьте меня в нужное русло мышления, ибо в программировании я новичок. Буду премного благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.10.2015, 15:43
Ответы с готовыми решениями:

Реализовать класс для описания календарной даты
Не знаю как начать писать программу нужно реализовать класс для описания календарной даты, где...

Написать программу, которая преобразует значение календарной даты
7. Написать программу, которая преобразует значение календарной даты, заданной в форме...

Определить возраст человека в годах относительно текущей календарной даты
Задание : Дано три целых числа, определяющих календарную дату (день, месяц и год) – день...

Функции задача на проверку четности введенных последовательно чисел
Здравствуйте! Есть такая задача: Напишите программу, которая вводит последовательность целых чисел...

3
585 / 488 / 371
Регистрация: 05.11.2013
Сообщений: 1,265
Записей в блоге: 6
26.10.2015, 19:24 2
Допиши 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
#include <stdio.h>
#include <string.h>
 
int is_date(char *buf) {
 return 0;
}
 
int is_number(char *buf) {
 return 0;
}
 
int is_palindrome(char *buf) {
 return 0;
}
 
int main(void){
 char buf[81];
 puts("Enter the text, Ctrl+Z for exit\n");
 while(scanf("%s",buf)==1) {
  if (is_date(buf)) printf ("\ndate: %s",buf);
  else if (is_number(buf)) printf ("\nnumber: %s",buf);
  else if (is_palindrome(buf)) printf ("\npalindrome: %s",buf);
  else printf ("\nword: %s",buf);
 }
 getchar(); return 0;
}
0
1 / 1 / 2
Регистрация: 26.10.2015
Сообщений: 22
26.10.2015, 19:37  [ТС] 3
Спасибо за ответ. Но я забыл добавить одну главную вещь. Там, по заданию, нельзя использовать библиотеку <string.h>.
0
585 / 488 / 371
Регистрация: 05.11.2013
Сообщений: 1,265
Записей в блоге: 6
26.10.2015, 19:50 4
Лучший ответ Сообщение было отмечено Risonsler как решение

Решение

в приведённом коде она и не используется вот например с добавленным ловцом палиндромов так должно пахать
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
#include <stdio.h>
 
int is_date(char *buf) {
 return 0;
}
 
int is_number(char *buf) {
 return 0;
}
 
int is_palindrome(char *buf) {
 char *start=buf,*end;
 while (*buf) { end=buf; buf++; }
 while (end>=start) {
  if (*end!=*start) return 0;
  end--; start++;
 }
 return 1;
}
 
int main(void){
 char buf[81];
 puts("Enter the text, Ctrl+Z for exit\n");
 while(scanf("%s",buf)==1) {
  if (is_date(buf)) printf ("\ndate: %s",buf);
  else if (is_number(buf)) printf ("\nnumber: %s",buf);
  else if (is_palindrome(buf)) printf ("\npalindrome: %s",buf);
  else printf ("\nword: %s",buf);
 }
 getchar(); return 0;
}
1
26.10.2015, 19:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.10.2015, 19:50
Помогаю со студенческими работами здесь

Реализация функции палиндрома
Я написала функцию, функция нормально работает. Но так как я смотрела по примерам, мне не очень...

Составить программу нахождения количества простых чисел от m до n. Проверку, является ли число простым, оформить в виде функции
Составить программу нахождения количества простых чисел от m до n. Проверку, является ли число...

Реализовать проверку ввода даты
Помогите, необходимо реализовать проверку ввода даты в заданном формате (ГГГГ-ММ-ДД). на языке...

Как осуществить проверку даты?
Здраствуйте! Подскажите как лучше сделать проверку даты сейчас ее вобще нет! Вводится вот так:...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru