Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/76: Рейтинг темы: голосов - 76, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 22

Программа, которая бы по введенному номеру единицы измерения и массы M выдавала бы соответствующее значение массы в килограммах

14.04.2013, 14:31. Показов 14749. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать программу, которая бы по введенному номеру единицы измерения(1-килограмм, 2-миллиграмм, 3-грамм, 4-тонна, 5-центнер) и масса M выдавала бы соответствующее значение массы в килограммах.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.04.2013, 14:31
Ответы с готовыми решениями:

Написать программу, которая по номеру единицы измерения и массе М выдавала бы значение массы в килограммах
Написать программу, которая по номеру единицы измерения (1 - килограмм, 2 - миллиграмм, 3 - грамм, 4 - тонна, 5 - центнер) и массой М...

Написать программу, которая бы по введённому номеру единицы измерения выводит соответствующее значение массы в килограммах.
Написать программу, которая бы по введённому номеру единицы измерения (1-миллиграм, 2-грамм, 3-килограмм, , 4-центнер, 5-тонна) и масса M ...

По введённому номеру единицы измерения массы и заданной массе вывести вес в килограммах
Написать программу, которая бы по введённому номеру единицы измерения массы (1-миллиграмм, 2-грамм, 3-килограмм, 4-центнер, 5-тонна) и...

8
14.04.2013, 14:54

Не по теме:

как вы собираетесь сдавать экзамен?

1
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 22
14.04.2013, 20:50  [ТС]
Цитата Сообщение от GetVariable Посмотреть сообщение

Не по теме:

как вы собираетесь сдавать экзамен?

ну вы мне эти покажете как делать а те будут просто аналогичны)))

Добавлено через 4 часа 43 минуты
=(((

Добавлено через 1 час 9 минут
и с этой помогите пожалуйста
0
17 / 17 / 28
Регистрация: 05.11.2012
Сообщений: 40
14.04.2013, 21:02
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
#include <iostream>
#include <math.h>
 
 
using namespace std;
 
int main()
{
int n = 0;
cin>>n;
double e = 0;
if (n == 1)
{
    cout<<1;
}
if (n == 2)
{
    cout<<0.000001;
}
if (n == 3)
{
    cout<<0.001;
}
if (n == 4)
{
    cout<<1000;
}
 
if (n == 5)
{
    cout<<100;
}
return 0;
}
Учи язык, по аналогии ничего не пишется, нужно понимать как работает программа, если хочешь реально что то писать.
1
 Аватар для AnyOne697
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
14.04.2013, 23:42
Цитата Сообщение от LelMath Посмотреть сообщение
Учи язык, по аналогии ничего не пишется, нужно понимать как работает программа, если хочешь реально что то писать.
Простите, но мне кажется было бы не плохо вам поучить язык.
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 <string>
#include <map>
 
int main ( int argc, char **argv ) {
    //argv[0] - path to excutable file
    //argv[1] - integer number - mass
    //argv[2] - two chars 'mg'/'gr'/'kg'/'hw'/'tn'
    std::map < std::string, float > trans; // create object of class map
    trans[ "mg" ] = 0.000001f; // for key 'mg', that mean milligramms
    trans[ "gr" ] = 0.001f; // like previous, gr = gramm
    trans[ "kg" ] =    1.f; // kg = killogramm
    trans[ "hw" ] =  100.f; // hw = hundredweight
    trans[ "tn" ] = 1000.f; // tn = ton
    
    
    /* Now we just parse first programm argument into integer
       and multiply one with transform factor */
    std::cout << (float)atoi ( argv[ 1 ] )*trans[ argv[ 2 ] ] << std::endl;
}
Почему так лучше? Во-первых, сам код намного проще. Во-вторых, время работы не зависит от пользователя (нередко является суперплюсом). В-третьих, добавить что-то не составит труда.
Хотя и формулировка задачи немного другая, счёл необходим всё же написать этот код и запостить его сюда.
Наконец, язык здесь вообще не причём. Чтобы писать действительно хорошее ПО, требуется 1) очень много времени, 2) желание, 3) немного логики. Впрочем, не все хотят программировать вообще. Не хотят - никто никого не заставляет. Но пощадите людей, которые будут читать Ваш код. Напишите его хотя бы красиво.
0
17 / 17 / 28
Регистрация: 05.11.2012
Сообщений: 40
15.04.2013, 00:04
Я бы не сказал, что ваш код проще. Я считаю, что такой код сейчас давать нелогично, так как по самому вопросу видно, что человек пока что программирует не очень хорошо, а ваш код подходит для продвинутых. Я же написал понятный код на самых основах. Во вторых, в данный момент разница в быстродействии незначительна, так как у нас только 5 вариантов ввода. Так же по вашему мнению
Цитата Сообщение от AnyOne697 Посмотреть сообщение
Чтобы писать действительно хорошее ПО, требуется 1) очень много времени
. 1) Очень много времени на что? Правильно, на изучение языка.

Я согласен, что мне нужно поучить язык.
0
 Аватар для Olivеr
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
15.04.2013, 00:15
Зачем куча if'ов? Человек возьмёт и будет
Цитата Сообщение от LelMath Посмотреть сообщение
по аналогии
до третьего курса писать...
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
#include <iostream>
 
using namespace std;
 
int main()
{
    int unit;
    cin >> unit;
    switch ( unit ) {
    case 1:
        cout << 1;
        break;
    case 2:
        cout << 0.000001;
        break;
    case 3:
        cout << 0.001;
        break;
    case 4:
        cout << 1000;
        break;
    case 5:
        cout << 100;
        break;
    default:
        cout << "unit not correct";
    }
 
    return 0;
}
0
17 / 17 / 28
Регистрация: 05.11.2012
Сообщений: 40
15.04.2013, 00:24
Я как раз писал, что тупо копировать нельзя. С новым кодом я согласен, он корректнее моего.
0
 Аватар для AnyOne697
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
15.04.2013, 01:57
Цитата Сообщение от LelMath Посмотреть сообщение
Я считаю, что такой код сейчас давать нелогично, так как по самому вопросу видно, что человек пока что программирует не очень хорошо
Что сложного в банальном отображении? Храним значения парами - ключ / пара. Доступ по ключу. В Си++ это сделано очень и очень не плохо (по мне так, лучше чем в Java). Преимущество? Можно использовать позже. Один раз инициализировал - сто раз использовал - удобно и просто.
Почему Си++ считается более сложным языком для обучения, чем, например, Java? Нет, не только из-за работы с памятью. У Java свои проблемы при работе с памятью, более того - куда менее очевидные для новичков, профессионалы порой застревают, ничего не понимая. Зато у Java очень хорошая стандартная платформонезависимая библиотека - за это её и любят. И я её люблю только за это (за остальное ненавижу). У Си++ есть кривоватая и далеко не идеальная стандартная библиотека. Но она есть! Причём там очень много общих алгоритмов, которые многие зачем-то пишут. Причём пишут в разы хуже. Зачем? Не знаю... Поэтому лучше учить язык, включая стандартную библиотеку. Это важно. Java учат сначала азам (арифметика, ветвления, классы, объекты, методы) используя стандартную библиотеку.

P.S. Более того, я даже не понял, почему этот код должен работать. Где там масса задаётся? Или она равна единице?..

P.P.S.
Цитата Сообщение от Olivеr Посмотреть сообщение
Зачем куча if'ов? Человек возьмёт и будет
У Вас не лучше. К сожалению. Можно было хотя бы enum сделать:
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
#include <iostream>
 
using namespace std;
 
enum Unit { kilograms = 1, milligrams, grams, tons, hundredweights };
 
int main()
{
    int unit;
    cin >> unit;
    switch ( unit ) {
    case kilograms:
        cout << 1;
        break;
    case milligrams:
        cout << 0.000001;
        break;
    case grams:
        cout << 0.001;
        break;
    case hundredweights:
        cout << 100;
        break;
    case tons:
        cout << 1000;
        break;
    default:
        cout << "unit not correct";
        break; // it's very important to! 
       // Or hi will took this and remember that in default case break isn't needed...
    }
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.04.2013, 01:57
Помогаю со студенческими работами здесь

Написать программу, которая выдавала бы соответствующее значение массы в килограммах
Написать программу, которая бы по введенному номеру единицы измерения (1 — килограмм, 2 — миллиграмм, 3 — грамм, 4 — тонна, 5 — центнер) и...

Вычислить соответствующее значение массы в килограммах
Составьте программу, которая по введённому номеру единицы измерения ( №1 - кг, №2 - мг, №3 - г, №4 - т, №5 - и) и массе тела M выдавала бы...

Единицы массы пронумерованы следующим образом: 1 — грамм, 2 — килограмм, 3 — центнер, 4 — тонна. Дан номер единицы массы
Test Input Result 1 1564 5.67

Перевод запрошенной массы тела в килограммах в выбранную единицу массы
Создать приложение, реализующее выбор пользователем единицы массы (килограмм, миллиграмм, грамм, тонна, центнер) и перевода запрошенной...

написать программу, которая бы по введенному номеру единицы измерения
написать программу, которая бы по введенному номеру единицы измерения ( 1- микрометр, 2-миллиметр, 3- метр, 4- дециметр, 5- километр) и...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru