С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
3 / 3 / 4
Регистрация: 06.05.2010
Сообщений: 18
1

перевод из строк в числа

06.05.2010, 07:46. Показов 1119. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите с корректированием задачи: дан текст, содержащий целые числа, составить программу, которая выводит на экран минимальное из чисел.

тут идея с поиском в строке целых чисел и закидыванием их в массив, идея оказалась полной фигней.
сделал потом решение без массива, но файл с кодом благополучно потерян.
за индусский код просьба не кидать помидоры >_<
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "iostream"
#include "cstdlib"
#include "cstring"
#include "string"
using namespace std;
int main(){
 
    int min;
    string s1,sub;
        getline(cin,s1);
    int *s2=new int[s1.length()];
    for(unsigned int i=0;i<s1.length();i++)
 
        s2[i]=atoi(sub.c_str());
    min=s2[0];
    for(int i=0;i<n;i++){
        if (s2[i]<min)
            min=s2[i];
    }
    cout<<min;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.05.2010, 07:46
Ответы с готовыми решениями:

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

Перевод списка строк в числа
всем привет! мне нужно перевести список срок в числа, делаю сплит вытягиваю по срезу, а потом как...

Плагин Polylang добавление строк в настройки плагина в "Перевод строк"
Здравствуйте. Столкнулся с проблемой перевода. Использую плагин Polylang, все отлично работает,...

Перевод числа из 10сс в 2сс,8сс и 16сс с заданием числа вещественного типа
Здраствуйте. Помогите с решением задачи. Задание: перевести число из десятичной системы счисления в...

4
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
06.05.2010, 08:26 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <vector>
#include <fstream>
#include <algorithm>
 
int main()
{
   std::vector<int> v;
   std::ifstream ifs("outfile.txt");
 
   int t = 0;
   while(ifs >> t)
      v.push_back(t);
 
   int min = *(std::min_element(v.begin(), v.end()));
   std::cout << min << std::endl;
 
   system("pause");
   return 0;
}
1
3 / 3 / 4
Регистрация: 06.05.2010
Сообщений: 18
06.05.2010, 08:40  [ТС] 3
ну с алгоритмом и векторами естественно очень легкая задача, мне надо реализовать её, без использования подобных библиотек и дополнительных функций
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 2
06.05.2010, 09:04 4
то есть ты хочешь сказать что использовать string можно, а vector нет? странное представление об алгоритмах и библиотеках.

Сделай тогда вот так:
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
#include <iostream>
#include <fstream>
 
int * min_element(int * a, int size)
{
   int * found = a;
   for(int i = 0; i < size; ++i)
      if(*found > a[i])
         found = &a[i];
   return found;
}
 
int main()
{
   std::ifstream ifs("infile.txt");
 
   int n = 0;
   ifs >> n;
 
   int *a = new int[n];
 
   for(int i = 0; i < n; ++i)
      ifs >> a[i];
 
   int min = *(min_element(a, n));
   std::cout << min << std::endl;
 
   delete[] a;
 
   system("pause");
   return 0;
}
В переменной n хранится количество чисел в файле, это должна быть самая первая запись в файле, напрмиер вот так:
Код
8
34 34 23 2 6 57 346 782
первая запись - 8 - это и есть размер
1
3 / 3 / 4
Регистрация: 06.05.2010
Сообщений: 18
07.05.2010, 14:11  [ТС] 5
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
#include "iostream"
#include "cstdlib"
#include "cstring"
#include "string"
using namespace std;
int main(){
    unsigned int i=0;
int min=500;
cin.get();
string s1,sub;
string razdel=".,;:!? ";
getline(cin,s1);
string::size_type k=0;
k=s1.find_first_of(razdel,0);
int *s2=new int[s1.length()];
while(i!=s1.length()){
        if(isdigit(s1[i])){
            k=s1.find_first_of(razdel,i)+1;
            sub=s1.substr(i,k-i);
            cout<<"k="<<k<<"i="<<i<<endl;
            s2[i]=atoi(sub.c_str());
            if(min>s2[i])
                min=s2[i];
                    }
        i++;
    }
cout<<min;
}
вот практически то, чего я хотел добиться, но теперь прога сравнивает только однозначные числа, и не реагирует на 1 элемент строки
пример: 1 фыв 2, выводит 2
пример: длорфы 17 128 12 лор27ю 88, выводит 1

Добавлено через 3 часа 17 минут
проблема всё еще не решена, реквестирую помощь=)

Добавлено через 17 часов 5 минут
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
#include "iostream"
#include "cstdlib"
#include "cstring"
#include "string"
using namespace std;
int main(){
    unsigned int i=0;
int min=INT_MAX;
cin.get();
string s1,sub;
string razdel=".,;:!? ";
getline(cin,s1);
string::size_type k=0;
int *s2=new int[s1.length()];
s1=s1+" ";
while(k!=string::npos && i!=s1.length()){
        if(isdigit(s1[i])){
            k=s1.find_first_of(razdel,i);
            if(k==string::npos) break;
            sub=s1.substr(i,k-i);
            
            s2[i]=atoi(sub.c_str());
            
            if(min>s2[i])
                min=s2[i];
            i=k;
                        }
        i++;
 
 
    }
 
 
cout<<min;
}
решил=)
0
07.05.2010, 14:11
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.05.2010, 14:11
Помогаю со студенческими работами здесь

Перевод числа из одной с.с. в другую, манипуляции с цифрами числа
Здравствуйте! У меня такая проблема... Есть программа, выполняющая определенные операции с...

Бинарные числа! Перевод простого числа в бираное и расчет.
Здравствуйте!Я понимаю, что моя просьба банальна, но я правда не могу никак разобраться с бинарными...

1. простые числа в массиве 2. перевод числа в строку
Здравствуйте. очень нужна помощь по программированию 1. удалить простые числа из массива у...

Разбиение строки на части, перевод строки в число и перевод числа
Есть задание: 1. Необходимо реализовать консольное приложение, позволяющее манипулировать строкой,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru