Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2012, 18:35   #1
vovik4385
Пользователь
 
Регистрация: 13.03.2012
Сообщений: 36
По умолчанию строки!!!

задание: Дана строка.Разработать программу которая будет выполнять следующие действия:

-подсчитывать кол-во содержащихся в них цифр;
-подсчитывать кол-во содержащихся в них прописных латинских букв;
-подсчитывать общее кол-во содержащихся в ней строчных латинских букв;


вот мой код:
Код:
#include "stdafx.h"
#include<iostream>
#include<cstring>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	char str[]="heLLo567WORld";

	
	
	
	int number=0;
	int kolvolat=0;
	int kolvo_rus=0;
	
for(int i=0;i<strlen(str);i++){
if(str[i]=isalpha(str[i]))
kolvolat++;
else if(str[i]=isdigit(str[i]))
number++;
else if(str[i]=islower(str[i]))
	kolvo_rus++;
}



cout<<kolvo_rus<<"\n";
			cout<<number<<"\n";
			cout<<kolvolat<<"\n";
			
			system("PAUSE");

	return 0;
}
у меня подсчитывает только первые символы!!!а последние символы почему то не считают?

Последний раз редактировалось ACE Valery; 14.03.2012 в 19:52.
vovik4385 вне форума Ответить с цитированием
Старый 14.03.2012, 18:42   #2
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 914
По умолчанию

if(str[i]=isalpha(str[i]))
А что это должно делать?
EUGY вне форума Ответить с цитированием
Старый 14.03.2012, 19:03   #3
vovik4385
Пользователь
 
Регистрация: 13.03.2012
Сообщений: 36
По умолчанию

истина если буква
vovik4385 вне форума Ответить с цитированием
Старый 14.03.2012, 19:10   #4
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 914
По умолчанию

Тогда зачем эту истину присваивать элементу массива, тем самым искажая данные в нем.
EUGY вне форума Ответить с цитированием
Старый 14.03.2012, 20:23   #5
vovik4385
Пользователь
 
Регистрация: 13.03.2012
Сообщений: 36
По умолчанию

Ну посоветуйте какую-нибудь альтернативу данным функциям?
vovik4385 вне форума Ответить с цитированием
Старый 14.03.2012, 20:35   #6
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 914
По умолчанию

Не усложняйте.
Код:
    if( isalpha(str[i]) )
        kolvolat++;
EUGY вне форума Ответить с цитированием
Старый 14.03.2012, 21:18   #7
vovik4385
Пользователь
 
Регистрация: 13.03.2012
Сообщений: 36
По умолчанию

спасибо большое!
vovik4385 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сделать в гриде строки выше, чтобы не растягивать строки до бесконечности kris__tina БД в Delphi 1 09.06.2011 15:31
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, Шпунюся Помощь студентам 1 16.12.2010 21:02
Создание пустой строки и копирование в неё содержимое предыдущей строки Gvaridos Microsoft Office Excel 2 29.10.2010 13:33
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. Александе еть я Общие вопросы C/C++ 5 13.04.2010 20:54
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10