Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
30 / 29 / 15
Регистрация: 28.09.2011
Сообщений: 449
1

Файл: Сравнить количество цифр и букв верхнего регистра

16.04.2012, 16:33. Показов 1770. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
задание: Сравнить количество цифр и букв верхнего регистра
понимаю, что нужно сначала использовать isalpha чтобы определить, что это не буква, а цифра; потом isupper чтобы определить буква ли это верхнего регистра! то есть цикл будет примерно такой
C++
1
2
3
4
5
6
7
for (j=0;j<длина файла;j++)
{
if (isalnum(a[j])=0)
 {kol++;}//если это не буква, значит цифра  
 if (isupper(a[j])!=0)
   {kol1++;}//определяем количество букв верхнего регистра 
}
но как определить длину файла(то есть сколько символов в файле) и вообще записать содержимое файла в массив а? поможете?
пытался вот так
C++
1
2
3
4
5
6
7
FILE *f1;
f1=fopen("failik.txt","r");
if (f1 == NULL)
 printf ("error");
  else {
    while (!feof(f1)){
    fread(&j, sizeof(int),1, f1);
работает, но в результате программы числа больше 1000.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.04.2012, 16:33
Ответы с готовыми решениями:

Подсчет букв верхнего и нижнего регистра
Я вроде как и написал скрипт, который считает эти символы, но проблемка в том, что он считает цифры...

Текстовый файл.Заменить латинские буквы верхнего регистра на буквы нижнего регистра
Создать текстовый файл из 5 строк, прочитать созданный файл и получить новый файл согласно...

Как в Tkinter задать ввод только букв верхнего регистра?
Народ. как в Python Tkinter задать ввод только букв верхнего регистра? и чтобы при вводе цифр...

Проверка пароля на наличие верхнего регистра, цифр и символов
Есть ли какой-то просто и малокодный способ проверки пароля, вводимого в textbox на необходимость...

4
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,927
17.04.2012, 09:26 2
но как определить длину файла
C++
1
2
3
fseek(f,0,SEEK_END);
size=ftell(f);
fseek(f,0,SEEK_BEG);
Но я бы сделал примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
FILE *f1;
f1=fopen("failik.txt","r");
if (f1 == NULL)
 printf ("error");
  else {
    while (!feof(f1)){
    fread(&j, sizeof(int),1, f1);
if (isdigit(j)!=0)
 {kol++;}//если это не буква, значит цифра  
 if (isupper(j)!=0)
   {kol1++;}//определяем количество букв верхнего регистра 
 
}
1
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
17.04.2012, 09:40 3
Файл текстовый? Цифры и буквы записаны без пробелов? Значит надо считывать побайтно:
C
1
2
3
4
5
6
7
8
    int c;
    ...
    while ( 1 ) {
        c = fgetc( fp );
        if ( c == EOF ) break;
        ... // проверка и счетчик
    }
    fclose( fp );
1
30 / 29 / 15
Регистрация: 28.09.2011
Сообщений: 449
17.04.2012, 10:52  [ТС] 4
то есть конечный код будет такой?
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
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
 
void main()
{
int kol=0,kol1=0,c;
clrscr();
FILE *f1;
while ( 1 ) {
        c = fgetc( f1 );
        if ( c == EOF ) break;
if (isdigit(c)!=0)
 {kol++;}//если это не буква, значит цифра  
 if (isupper(c)!=0)
   {kol1++;}//определяем количество букв верхнего регистра 
 
}
fclose(f1);
printf("%d\n",kol);
printf("%d\n",kol1);
getch();
}
в результате все равно 0
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
17.04.2012, 10:59 5
Попробуй открыть файл.
1
17.04.2012, 10:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2012, 10:59
Помогаю со студенческими работами здесь

Не записывается буквы верхнего регистра в файл
Здравствуйте! Почему буквы верхнего регистра не сохраняется на файл, нижние сохраняется. void...

Запись символов верхнего регистра в другой файл
Читаем строку из файла - пишем в другой файл только символы верхнего регистра, которые встречаются...

Переписать все буквы верхнего регистра из файла в новый файл
Переписать все латинские буквы верхнего регистра из каждой строки в новый файл

Создать файл, ввести символы, вывести на экран количество не латинских букв, количество цифр
Есть код к заднию , но он не правильно показывает данные - киррилицу не ищет а латиницу больше...


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

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