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

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

Войти
Регистрация
Восстановить пароль
 
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
#1

Преобразование из заглавных в строчные буквы, ошибка в функции - C++

08.12.2009, 17:42. Просмотров 769. Ответов 8
Метки нет (Все метки)

C++
1
2
3
4
5
int lower(char a){
if(a>='A' && a<='Z')
return(a+'@'-'a');
else return (a);
}
походу ясно что должна делать функция,вызываю из меина ее,не работает,точнее выводит не понятное..с данным кодом ввожу A выводит 32,меняю вместо интегера пишу чар,тоже не работает,при вооде букв выводится пробел,а вот навсякий весь код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int lower(char a){
if(a>='A' && a<='Z')
return(a+'@'-'a');
else return (a);
 
}
 
int main(){
char a;
cin>>a;
 
cout<<lower(a);
system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2009, 17:42     Преобразование из заглавных в строчные буквы, ошибка в функции
Посмотрите здесь:

Поменять строчные буквы на заглавные C++
C++ Изменить строчные буквы на прописные
В алфавитной строке перевести строчные буквы в заглавные и заглавные в строчные C++
C++ Преобразовать строчные буквы в заглавные
C++ Перевод заглавных букв в строчные и наоборот
C++ Русский текст, преобразование (прописные буквы в строчные)
Преобразование заглавных букв в строчные C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2786 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
08.12.2009, 18:47     Преобразование из заглавных в строчные буквы, ошибка в функции #2
1. Соблюдай типизацию: раз функция обрабатывает char, то и возвращай char.
2. Неправильно переводишь.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
char lower(char a)
{
    if(a>='A' && a<='Z')
        return(a+32);
    else 
        return (a);
}
 
int main()
{
    char a;
    cin >> a;
    cout << lower(a);
    
    system("pause");
    return 0;
}
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
08.12.2009, 20:31  [ТС]     Преобразование из заглавных в строчные буквы, ошибка в функции #3
ладно если слово о типизации пошло другой вопрос на счет типов задам...
функция принимает слово-Имя,в функции,подробн не буду,это имя должно ывыодится в файл но не получается
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int wordsGenerator(char name[])
{
//Объявляем//
 char *pod[1206];
 char *skaz[741];
 char *subskaz[30];
   int n = rand() % 1204;
   int m = rand() % 720;
     int x = rand() % 28;
   //СУЩЕСТВИТЕЛЬНЫЕ//
/*ЭКРАН*/  
FILE *f=fopen("test.txt", "w");
printf("Добро пожаловать на Геннератор Ругательств! :)\n\n\n");
    fprintf("%s ты %s %s %s\n\n\n\n\n\n\n", name, subskaz[x], skaz[m], pod[n]);
      cout << "\n";
printf("%s ты %s %s %s\n\n\n\n\n\n\n", name, subskaz[x], skaz[m], pod[n]);
fclose(f);
 
return 0;
 
}
Код
Error	2	error C2664: 'fprintf' : cannot convert parameter 1 from 'const char [22]' to 'FILE *'	c:\documents and settings\ag\my documents\visual studio 2008\projects\generator\generator\generator.cpp	2012	generator

Добавлено через 2 минуты
это из меина
C++
1
2
3
4
5
char name;
 
  cout << "Имя: ";
      cin >>name;
      wordsGenerator(name);
я все пробовал с поинтом без..


Добавлено через 1 час 9 минут
Monte-Cristo, а что за а+32?

Добавлено через 1 минуту
Monte-Cristo, я ввожу ALEX только а выводится

Добавлено через 4 минуты
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
Неправильно переводишь.
этот код из КиР..хотя там на форуме гвоорили что много ошибок
Monte-Cristo
2786 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
08.12.2009, 20:31     Преобразование из заглавных в строчные буквы, ошибка в функции #4
Цитата Сообщение от МедведЪ Посмотреть сообщение
Monte-Cristo, а что за а+32?
ASCII
Microsoft Windows [Version 6.1.7100]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

D:\Self\tmp\Projects\pasgen>ascii
0 -
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 - ▼
32 -
33 - !
34 - "
35 - #
36 - $
37 - %
38 - &
39 - '
40 - (
41 - )
42 - *
43 - +
44 - ,
45 - -
46 - .
47 - /
48 - 0
49 - 1
50 - 2
51 - 3
52 - 4
53 - 5
54 - 6
55 - 7
56 - 8
57 - 9
58 - :
59 - ;
60 - <
61 - =
62 - >
63 - ?
64 - @
65 - A
66 - B
67 - C
68 - D
69 - E
70 - F
71 - G
72 - H
73 - I
74 - J
75 - K
76 - L
77 - M
78 - N
79 - O
80 - P
81 - Q
82 - R
83 - S
84 - T
85 - U
86 - V
87 - W
88 - X
89 - Y
90 - Z
91 - [
92 - \
93 - ]
94 - ^
95 - _
96 - `
97 - a
98 - b
99 - c
100 - d
101 - e
102 - f
103 - g
104 - h
105 - i
106 - j
107 - k
108 - l
109 - m
110 - n
111 - o
112 - p
113 - q
114 - r
115 - s
116 - t
117 - u
118 - v
119 - w
120 - x
121 - y
122 - z
123 - {
124 - |
125 - }
126 - ~
127 - ⌂
128 - А
129 - Б
130 - В
131 - Г
132 - Д
133 - Е
134 - Ж
135 - З
136 - И
137 - Й
138 - К
139 - Л
140 - М
141 - Н
142 - О
143 - П
144 - Р
145 - С
146 - Т
147 - У
148 - Ф
149 - Х
150 - Ц
151 - Ч
152 - Ш
153 - Щ
154 - Ъ
155 - Ы
156 - Ь
157 - Э
158 - Ю
159 - Я
160 - а
161 - б
162 - в
163 - г
164 - д
165 - е
166 - ж
167 - з
168 - и
169 - й
170 - к
171 - л
172 - м
173 - н
174 - о
175 - п
176 - ░
177 - ▒
178 - ▓
179 - │
180 - ┤
181 - ╡
182 - ╢
183 - ╖
184 - ╕
185 - ╣
186 - ║
187 - ╗
188 - ╝
189 - ╜
190 - ╛
191 - ┐
192 - └
193 - ┴
194 - ┬
195 - ├
196 - ─
197 - ┼
198 - ╞
199 - ╟
200 - ╚
201 - ╔
202 - ╩
203 - ╦
204 - ╠
205 - ═
206 - ╬
207 - ╧
208 - ╨
209 - ╤
210 - ╥
211 - ╙
212 - ╘
213 - ╒
214 - ╓
215 - ╫
216 - ╪
217 - ┘
218 - ┌
219 - █
220 - ▄
221 - ▌
222 - ▐
223 - ▀
224 - р
225 - с
226 - т
227 - у
228 - ф
229 - х
230 - ц
231 - ч
232 - ш
233 - щ
234 - ъ
235 - ы
236 - ь
237 - э
238 - ю
239 - я
240 - Ё
241 - ё
242 - Є
243 - є
244 - Ї
245 - ї
246 - Ў
247 - ў
248 - °
249 - ∙
250 - ·
251 - √
252 - №
253 - ¤
254 - ■
255 - *

смещение между Верхним регистром и нижним регистром.


МедведЪ, на этот вопрос не буду отвечать, пока ты не научишься офрмлять нормально код. А то глаза сломать можно пока.

p.s: если используешь C++ (cout/cin) то и с файлами работай через ifstream/ofstream/fstream, а не через C вариант FILE*.
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
08.12.2009, 20:45  [ТС]     Преобразование из заглавных в строчные буквы, ошибка в функции #5
МедведЪ, на этот вопрос не буду отвечать, пока ты не научишься офрмлять нормально код.
я повторюсь,код не й,и я первый раз вижу такое,я по книге.

Цитата Сообщение от Monte-Cristo Посмотреть сообщение
ifstream/ofstream/fstream
синтаск можно?
Monte-Cristo
2786 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
08.12.2009, 20:58     Преобразование из заглавных в строчные буквы, ошибка в функции #6
Цитата Сообщение от МедведЪ Посмотреть сообщение
я повторюсь,код не й,и я первый раз вижу такое,я по книге.
я тебе про оформление - Табы и Пробелы я думаю ты можешь расставить


Цитата Сообщение от МедведЪ Посмотреть сообщение
синтаск можно?
я не онлайн учитель ) в книги! всегда смотри в книги!)

ifstream - файл для чтения.
ofstream - файл для записи.

C++
1
2
3
4
5
6
ifstream inf("path_to_file");// текстовый режим по-умолчанию
char str[255];
inf >> str; // это если до пробела
// или
inf.getline(str, sizeof(str)); // это если строку
inf.close();
с ofstream аналогично, только используется оператор << для записи.
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
08.12.2009, 21:04  [ТС]     Преобразование из заглавных в строчные буквы, ошибка в функции #7
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
я не онлайн учитель ) в книги! всегда смотри в книги!)
у меня книга граффическая,не смогу в поиск забить,и сама книга 800 страниц,я не смогу столкьо страниц пролистать чтобы найти это!по делу поможешь?Гарик?

Добавлено через 2 минуты
ASCII
оо полезно!
Monte-Cristo
2786 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
08.12.2009, 21:11     Преобразование из заглавных в строчные буквы, ошибка в функции #8
Цитата Сообщение от МедведЪ Посмотреть сообщение
о делу поможешь?Гарик?
1. Используй FineReader, или PDF хорошего качества (где есть возможность поиска по тексту) =)
2. Помочь? Возможно... но не писать вместо тебя.

Итак приступим.


Цитата Сообщение от МедведЪ Посмотреть сообщение
char *pod[1206];
char *skaz[741];
char *subskaz[30];
wtf, или что это такое?

ты создаешь массивы указателей... и потом ты записываешь туда, куда указывают эти указатели.. но они то указывает совершенно произвольно! нужно либо выделять память и связывать ее с ними, или создать статический массив строк.

Например так...
C++
1
2
3
 char pod[100][1206] // это для 100 слов, каждое из которых может быть длинной 1206 =);
 char skaz[100][741];
 char subskaz[100][30];
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2009, 21:19     Преобразование из заглавных в строчные буквы, ошибка в функции
Еще ссылки по теме:

Вывести только строчные буквы C++
Поменять все строчные буквы на прописные, прописные на строчные C++
C++ Преобразовать все строчные буквы(как латинские, так и русские) в прописные, а прописные в строчные
C++ Преобразование всех строчных букв в прописные, а прописных — в строчные
Русские строчные буквы преобразовать в прописные C++

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

Или воспользуйтесь поиском по форуму:
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
08.12.2009, 21:19  [ТС]     Преобразование из заглавных в строчные буквы, ошибка в функции #9
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
wtf, или что это такое?
массивы где более 1000 матов,выкладывать?

Добавлено через 53 секунды
Monte-Cristo, ты мне лучше скажи почему выодится на экран только буква а?я все решил уже

Добавлено через 1 минуту

Не по теме:

у меня есть файл alex.h в одном проекте,как добавить в другой пройкт?Надо вручную сделать?там копи,пейст?

Yandex
Объявления
08.12.2009, 21:19     Преобразование из заглавных в строчные буквы, ошибка в функции
Ответ Создать тему
Опции темы

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