С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
mAb1she
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 2
#1

Для каждого прочитанного числа напечатать строку, содержащую соответствующее число символов "*" - C++

28.10.2016, 13:01. Просмотров 171. Ответов 1
Метки c++ (Все метки)

Целое задание выглядит так:
Написать программу, которая читает из файла несколько целых чисел (каждое из промежутка от 1 до 80). Для каждого прочитанного числа программа должна напечатать строку, содержащую соответствующее число символов *.
Например, если программа прочла число 5, то должно быть напечатано *****.

Я реализовал чтение чисел из файлов в переменную string

Вопрос: нужна реализация записи звездочек по этим числам, вся бяда с типами, может, кто знает, как попроще это все реализовать.

Уже написанный код:
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include "stdafx.h"
#include <iostream> 
#include <io.h> 
#include <fstream>
#include <string> 
#include <stdlib.h> 
 
 
 
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"RUS");
                            
                            string line;
                            string text;
        string result;
 
    ifstream myfile ("example.txt");
    
 
    
                    if (myfile.is_open())
                  {
                      while (! myfile.eof() )
                      { 
                        getline (myfile,line);
                      }
                        
        
                  }
    else cout << ("Unable to open file")<< endl; 
 
 
 
    system("pause");
    return 0;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2016, 13:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Для каждого прочитанного числа напечатать строку, содержащую соответствующее число символов "*" (C++):

Для каждого прочитанного числа напечатать строку, содержащую соответствующее число звездочек - C++
Напишите программу которая читает из файла несколько целых чисел (каждое между 1 и 72). Для каждого просчитанного числа ваша программа...

Для каждого элемента последовательности вывести на экран "true" если число чётное и "false" если число нечёное - C++
Задана последовательность из 5 цифр. Для каждого числа вывести на экран &quot;true&quot; - если число четное и &quot;false&quot; - если не четное. ...

После каждого знака препинания (".", ",", ";") вставить в строку пробел, если там его нет - C++
Выполните задания с использованием библиотечного класса string. Даны строка S. Необходимо после каждого знака препинания (&quot;.&quot;, &quot;,&quot;,...

Для массива из 10 чисел проверить, есть ли в нем два одинаковых числа и напечатать "да" или "нет" - C++
void check_same(const int* a) { for (const int* p = a; p &lt; a + 9; p++) for (const int* q = p+1; q &lt; a + 10; q++) ...

Дано целое число , лежащие в диапазоне от -999 до 999.Вывести строку - словесного описание данного числа вида "отрицательное двухзначное число", "отри - C++
Дано целое число , лежащие в диапазоне от -999 до 999. Вывести строку - словесного описание данного числа вида &quot;отрицательное двухзначное...

Даны две строки. Если они начинаются с одинаковых символов, то напечатать "ДА", иначе - "НЕТ" - C++
Даны две строки. Если они начинаются с одинаковых символов, то напечатать &quot;ДА&quot;, иначе - &quot;НЕТ&quot;. (5)

1
Maxim Prishchepa
Эксперт С++
1923 / 1035 / 74
Регистрация: 29.03.2010
Сообщений: 3,167
28.10.2016, 15:01 #2
как хранятся числа у вас в файле - хз, раз написали чтение из файла, то осталось сделать разбиение на числа, т.е. берете вашу строку и делаете что-то по типу:

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
25
26
27
28
29
30
void split(const std::string &s, char delim, std::vector<std::string> &elems) {
    std::stringstream ss;
    ss.str(s);
    std::string item;
    while (std::getline(ss, item, delim)) {
        elems.push_back(item);
    }
}
 
std::vector<std::string> split(const std::string &s, char delim) {
    std::vector<std::string> elems;
    split(s, delim, elems);
    return elems;
}
 
void main() {
  //...
  string stringwithdigits;
  //... записываете свои числа сюда, дальше нужно сделать парсер
  const char separatorCh = ','; //сепаратор который вы будете использовать в своем файле
  std::vector<std::string> digits = split(stringwithdigits, separatorCh); //разбиваем целую строку на подстроки, на основе сепаратора
  for(string digitString : digits) { //бежим по всем разобранным числам
       const int digit = std::stoi(digit); //преобразовываем строку к инту
       for (int i = 0; i < digit; ++i)
       {
             cout << "*"; //выводим нужное кол-во звездочек
       }
       cout << "\n";
  }
}
Добавлено через 12 секунд
в общем как-то так...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2016, 15:01
Привет! Вот еще темы с ответами:

Найти все вхождения в строку последовательности символов "сто" и заменить на "100" - C++
Дана строка символов. Найти все вхождений последовательностей символов &quot;сто&quot; и заменить на &quot;100&quot;

Функции: для каждого числа последовательности найти количество цифр "5" - C++
Вводится последовательность из N целых чисел. Для каждого числа последовательности найти количество цифр 5 (функцией оформить определение...

Наследуемым классом для комплексного числа объявить класс "радиус-вектор", имеющий данные "длина" и "угол" - C++
кто то напишите пожалуйста, вот программа: наследуемым классом для комплексного числа объявить класс &quot;радиус-вектор&quot;, имеющий данные...

Через ООП: Дать для числа наименование: "рубль", "рубля", "рублей"; - C++
Помогите пожалуйста с задачей. Могу сделать ее просто, но надо через ООП и у меня не получается. Дано натуральное число N (N&lt;20),...


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

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

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