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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
#1

какая функция считает только цифры.ТЕМА: «Работа со строками в С++» - C++

09.02.2010, 08:11. Просмотров 1495. Ответов 14
Метки нет (Все метки)

Практическая работа №8
ТЕМА: «Работа со строками в С++»
Цель: изучить работу по обработке текстовых строк в С++.
Тип урока: практическая работа.
Количество часов: 4.
Необходимое программное обеспечение: Visual Studio 6 Ent, MS Word.
Необходимые сведения из теории:
символьные строки в С++;
строка как параметр функции;

училка написала пример "РУСЛАН 706" и спросила что надо чтобы подсчитать только числа???а я не ответил.Подскажите пожалуйста!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2010, 08:11     какая функция считает только цифры.ТЕМА: «Работа со строками в С++»
Посмотрите здесь:

Тема: Работа со строками в С++ - C++
какая функция подсчитывает ТОЛЬКО количество цифр в данной строке. Например: "РУСЛАН 706" функция if (isdigit()) не подходит ...

Какая функция в С++ берет только дробную часть от числа? - C++
Какая функция в С++ берет только дробную часть от числа?:)

Работа со строками, функция strcat_s - C++
int main() { char *str1 = "edfcax"; char *str2 = "abcd"; //char temp = {}; // так работает char *temp = new char; // а вот...

Работа со строками, функция substr - C++
Допустим есть строка, необходимо создать субстроку, отбросив первые пять символов. Если применить функцию substr: str.substr(5.n) ...

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

Задача в С++. ТЕМА : ОПЕРАЦИИ СО СТРОКАМИ - C++
ТЕМА : ОПЕРАЦИИ СО СТРОКАМИ Напишите программу, которая вставляет символ тире после каждого перехода с буквы на цифру и наоборот с...

Какая здесь ошибка? Программа должна считать сумму в столбцах, но почему-то неверно считает - C++
#include <iostream> #include <stdlib.h> main() { int S=0, a, Sum; for (int i = 1; i <=3; i++) for (int j = 1; j <=5; j++) { ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
09.02.2010, 09:01     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #2
твоя же ветка первое задание.
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
09.02.2010, 09:17  [ТС]     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #3
Цитата Сообщение от easybudda Посмотреть сообщение
твоя же ветка первое задание.
ну объясните мне пожалуйста

Добавлено через 6 минут
мне надо именно какая функция и чтобы ТОЛЬКО числа считал!!!!!!!!!!!

Добавлено через 5 минут
училка говорила что начинается на if

Добавлено через 1 минуту
напишите и объясните пожалуйста,если вам не трудно. к трём пойду уже сдавать,по московскому будет 1 час
Paulie
Айхрень...
306 / 174 / 4
Регистрация: 02.06.2009
Сообщений: 1,078
09.02.2010, 09:19     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #4
q7, в ссылке выше от товарища easybudda, посмотри, второй же пост - решение твоей первой задачи!
Там цикл For, в котором берётся указатель на каждый символ строки и проверяется, если числовое значение содержится, то увеличиваем счётчик.
И вперёд дуй на экзамен.
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
09.02.2010, 09:29     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #5
Цитата Сообщение от q7 Посмотреть сообщение
училка говорила что начинается на if
А там кроме этого
C++
1
if ( isdigit(*p) )
что-нибудь ещё на if начинается?
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
09.02.2010, 09:37  [ТС]     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #6
#include <cctype> - что за директива???

Добавлено через 5 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <cctype>
using namespace std;
 
int main(){
        char str[256], *p;
        int cnt = 0;
        
        cout << "String: ";
        cin.get(str, 256);
        for ( p = str; *p; ++p )
                if ( isdigit(*p) )
                        ++cnt;
        cout << "Found " << cnt << " digits" << endl;
        
        return 0;
опишите каждую срочку пожалуйста я вообще не шарю(((
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
09.02.2010, 09:41     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #7
q7, в С оно же <ctype.h> (character type) - заголовочный файл с функциями для обработки символов. isdigit() как-раз оттуда.
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
09.02.2010, 09:56  [ТС]     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #8
cin.get - что такое get в этом случае???
Paulie
Айхрень...
306 / 174 / 4
Регистрация: 02.06.2009
Сообщений: 1,078
09.02.2010, 09:58     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream> //подключаем библиотеку iostream
#include <cctype> //...cctype
using namespace std; //используем пространство имён std
 
int main(){ //начинаем функцию main (main - есть точка входа в программу)
char str[256], *p; //объявляем переменные str длиой 256 символов и указатель p
int cnt = 0; //счётчик, изначаьно равен нулю
 
cout << "String: "; //выводим текст на экран
cin.get(str, 256);//считываем строку введённую с клавиатуры
for ( p = str; *p; ++p ) //проходим по всей строке, увеличивая указатель (в каждый цикл p будет перемещаться на 1 символ вперёд
if ( isdigit(*p) ) //если указатель указывает на число
++cnt; //увеличиваем счётчик
cout << "Found " << cnt << " digits" << endl;
 
return 0;//функция неумолимо должна вернуть число, возвращаем 0.
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
09.02.2010, 10:02  [ТС]     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #10
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "stdafx.h"
#include "iostream.h"
#include "string.h"
 
void main()
{char str[256], *p;
int num=0;
cout<<"Input string: ";
cin (str,256);
for (p=str;*p;p++)
if (isdigit(*p)) num++;
cout<<"String's length: "<<num;}

а если программа будет выглядеть так???проверьте пожалуйста
Paulie
Айхрень...
306 / 174 / 4
Регистрация: 02.06.2009
Сообщений: 1,078
09.02.2010, 10:09     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #11
Цитата Сообщение от q7 Посмотреть сообщение
cin (str,256);
ну а куда .get делся-то? может вообще написать программу:
Хочу_числа_из_строки(str)???

Добавлено через 4 минуты
Да, вот случайно наткнулся на форуме
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
09.02.2010, 10:13  [ТС]     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #12
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include "stdafx.h"
#include "iostream.h"
#include "string.h"
 
void main()
{char str[256], *p;
int num=0;
cout<<"Input string: ";
cin.get (str,256);
for (p=str;*p;p++)
if (isdigit(*p)) num++;
cout<<"String's length: "<<num;}

так правильно будет???
Paulie
Айхрень...
306 / 174 / 4
Регистрация: 02.06.2009
Сообщений: 1,078
09.02.2010, 10:17     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #13
Цитата Сообщение от q7 Посмотреть сообщение
#include "stdafx.h"
у тебя в папке с программой есть данный файл?


Цитата Сообщение от q7 Посмотреть сообщение
#include "iostream.h"
почему ты решил, что надо стаивть кавычки, вместо скобок, и добавлять .h? В современных C++ компиляторах поставляются хедеры некоторые без .h, а скобки <> говорят о том, что вначале файл ищется в стандартных путях (в дитектории с хедерами C++, потом по вяским PATH, если это Windows), а в кавычках указывается то, что находится в текущей папке!
q7
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 38
09.02.2010, 10:28  [ТС]     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #14
Цитата Сообщение от #Мессир Посмотреть сообщение
у тебя в папке с программой есть данный файл?



почему ты решил, что надо стаивть кавычки, вместо скобок, и добавлять .h? В современных C++ компиляторах поставляются хедеры некоторые без .h, а скобки <> говорят о том, что вначале файл ищется в стандартных путях (в дитектории с хедерами C++, потом по вяским PATH, если это Windows), а в кавычках указывается то, что находится в текущей папке!
у нас С++ 2000 года чтоли,вот такая у нас тупая училка!!!

Добавлено через 7 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdafx.h> // пишется по умолчанию
#include <iostream.h>
#include <string.h>
 
void main()
{char str[256], *p;
int num=0;
cout<<"Input string: ";
cin.get (str,256);
for (p=str;*p;p++)
if (isdigit(*p)) num++;
cout<<"String's length: "<<num;}

а так правильно будет???
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2010, 10:43     какая функция считает только цифры.ТЕМА: «Работа со строками в С++»
Еще ссылки по теме:

Функция неправильно считает сумму - C++
Функция mean() (определение стр.84-96,вызов ф-ции стр.42) неправильно считает сумму.Все функции до неё делают правильные...

Почему программа считает только корень из Z? - C++
Помогите пожалуйста, в чем проблема? почему считает только корень из Z? #include &lt;iostream&gt; #include &lt;conio.h&gt; //подключение...

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

Функция, которая считает по двум значениям их произведение - C++
Напишите пожалуйста, функцию, которая считает по двум значениям их произведение.

Функция strlen() на русской раскладке считает один символ за 2 - C++
Объясните пожалуйста почему функция &quot;strlen()&quot; считает очень странным образом пишешь Английскими буквами считает правильно, перехожу на...


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

Или воспользуйтесь поиском по форуму:
Paulie
Айхрень...
306 / 174 / 4
Регистрация: 02.06.2009
Сообщений: 1,078
09.02.2010, 10:43     какая функция считает только цифры.ТЕМА: «Работа со строками в С++» #15
Цитата Сообщение от q7 Посмотреть сообщение
#include <stdafx.h> // пишется по умолчанию
Уж не знаю как в 2000м, видимо-таки настал конец света, но чтобы это было "по умолчанию" - сомневаюсь... лично у меня есть программы, где сего нет, и не надо, и всё прекрасно работает.

Про ++num & num++ тебе сюда.
Yandex
Объявления
09.02.2010, 10:43     какая функция считает только цифры.ТЕМА: «Работа со строками в С++»
Ответ Создать тему
Опции темы

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