Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Шары
0 / 0 / 0
Регистрация: 03.11.2015
Сообщений: 8
1

Вывести true, если в заданной строке символов буква a встречается чаще, чем буква b

16.02.2016, 21:00. Просмотров 1504. Ответов 7
Метки нет (Все метки)

Вывести true, если в заданном строке символов буква a встречается чаще, чем буква b, и вывести false в противном случае.
Только без массива, самую простую, пожалуйста
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.02.2016, 21:00
Ответы с готовыми решениями:

Напечатать true, если в заданном тексте буква а встречается чаще, чем буква b, иначе - напечатать false
Составьте программу на Паскале. Напечатать true, если в заданном тексте буква а встречается чаще,...

Запишите условие истинное, если: в записи фамилии «Соколенко» встречается буква «н», но не встречается буква «у»
Запишите условие истинное, если: в записи фамилии «Соколенко» встречается буква «н», но не...

Дана строка. Вывести слова, в которых чаще всех встречается буква "а"
Дана строка. Вывести слова, в которых чаще всех встречается буква "а". 10 класс, паскаль. Никак не...

Подсчитайте, сколько раз в данной строке символов встречается каждая латинская строчная буква
Подсчитайте, сколько раз в данной строке символов встречается каждая латинская строчная...

Определить, какая русская буква встречается чаще
Помогите пожалуйста с работой в паскале.Программа написана и работает, но только в АВС из-за Chr. ...

7
Sergio Leone
2499 / 1121 / 581
Регистрация: 07.06.2014
Сообщений: 3,268
17.02.2016, 00:25 2
примерно так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
var i,ka,kb : integer;
 s:string;
begin
  Write('Vvedite stroku:');
  ReadLn(s);
  ka:=0; kb:=0;
  for i:=1 to Length(s) do
    if s[i]='a' then Inc(ka)
    else
       if s[i]='b' then Inc(kb);
 
 WriteLn(ka>kb)
end.
0
Шары
0 / 0 / 0
Регистрация: 03.11.2015
Сообщений: 8
17.02.2016, 00:33  [ТС] 3
Большое спасибо, но вы используете массивы, можно ли как-то без них? мы просто еще не проходили их в школе.
0
Joy
Эксперт Pascal/Delphi
2263 / 1256 / 1474
Регистрация: 29.08.2014
Сообщений: 4,566
17.02.2016, 06:28 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
var k : integer;
    c:char;
begin
  Write('Vvedite stroku:');
  k:=0;
  while not eoln do begin
   read(c);
   k:=k+ord(c='a')-ord(c='b');
  end;
  WriteLn(k>0)
end.
2
17.02.2016, 06:28
Constantin Cat
2721 / 1473 / 419
Регистрация: 28.02.2015
Сообщений: 2,999
Завершенные тесты: 1
17.02.2016, 10:18 5
Цитата Сообщение от Шары Посмотреть сообщение
Большое спасибо, но вы используете массивы
Строка это массив типа CHAR
1
Sergio Leone
2499 / 1121 / 581
Регистрация: 07.06.2014
Сообщений: 3,268
17.02.2016, 21:15 6
Цитата Сообщение от Шары Посмотреть сообщение
если в заданном строке символов
а где в твоём решении строка, которая по условию задана?
а строка - это именно массив из char'ов
Хотя, конечно, знать, что такое массивы - всё равно надо!

Цитата Сообщение от Constantin Cat Посмотреть сообщение
Строка это массив типа CHAR
Так точно!
0
Mogobeast
8 / 8 / 4
Регистрация: 14.02.2016
Сообщений: 53
Завершенные тесты: 1
17.02.2016, 21:36 7
Странно, что такое задали без знания массивов.
Попробуй принести .exeшник с копирайтом
0
Joy
Эксперт Pascal/Delphi
2263 / 1256 / 1474
Регистрация: 29.08.2014
Сообщений: 4,566
18.02.2016, 06:39 8
Цитата Сообщение от Mogobeast Посмотреть сообщение
Странно, что такое задали без знания массивов.
Попробуй принести .exeшник с копирайтом
и правильно, что без массивов, т.к. в TP длина строки ограничена 255 символами, а если вместо консольного ввода будет файл с длиной строки больше 255 символов - результат будет неверный.

Добавлено через 7 минут
файл: AB257.TXT все в одну строку:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
его подаем на вход двух программ:
первая
Цитата Сообщение от Sergio Leone Посмотреть сообщение
var i,ka,kb : integer;
*s:string;
begin
* Write('Vvedite stroku:');
* ReadLn(s);
* ka:=0; kb:=0;
* for i:=1 to Length(s) do
* * if s[i]='a' then Inc(ka)
* * else
* * * *if s[i]='b' then Inc(kb);
WriteLn(ka>kb)
end.
результат:
D:\tp7_0\BIN>1.EXE <AB257.TXT
Vvedite stroku:TRUE
вторая:
Цитата Сообщение от Joy Посмотреть сообщение
var k : integer;
* * c:char;
begin
* Write('Vvedite stroku:');
* k:=0;
* while not eoln do begin
* *read(c);
* *k:=k+ord(c='a')-ord(c='b');
* end;
* WriteLn(k>0)
end.
результат:
D:\tp7_0\BIN>2.EXE <AB257.TXT
Vvedite stroku:FALSE

действительно, должно быть False, т.к. букв a -128 и ,букв b-128
0
18.02.2016, 06:39
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2016, 06:39

напечатать True, если в заданном тексте буква А встречается чаще, чем буква Б
надрукувати True, якщо в заданому тексті буква А зустрічається частіше, ніж буква Б, надрукувати...

Составить программу, которая выводит тру, если в строке буква A встречается чаще, чем буква Б, и фалсе в противном случае
Дана последовательность из n символов. Составить программу, которая выводит тру, если в строке...

Найти и вывести слово, в котором эта буква чаще встречается
Задается строка с текстом на русском языке, также задается некоторая буква, нужно найти и вывести...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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