Вопрос № 117147: Здравствуйте, уважаемые эксперты! С наступающим Рождеством Вас. Помогите пожалуйста решить задания. Тема: "Побитовые операции".
Задание 1: Найти значение выражения Y=4(7a/4+b). Для операций умножения и деления использовать сдвиг влево ...Вопрос № 117149: Здравтсвуйте, уважаемые эксперты!
Нужно написать программу, которая на рабочем столе текущего пользователя создавала бы пустой тектовый файл. Всем известно, что папка "Рабочий стол" находится в директории C:Documents and Settings<...Вопрос № 117208: Уважаемые эксперты!Помогите пожалуйста с программой!(Visual Studio6-консольн.прил-С):
Для хранения данных о цветных планшетных сканерах описать структуру вида:
struct scan_info {
char model[25]; // наименование модели
int price; //цен...Вопрос № 117210: Помогите пожалуйста написать код программы на C++.
Дан массив целых чисел, состоящий из 20 элементов. Найти самый большой и самый маленький элемент и вывести их значения на экран....
Вопрос № 117.147
Здравствуйте, уважаемые эксперты! С наступающим Рождеством Вас. Помогите пожалуйста решить задания. Тема: "Побитовые операции".
Задание 1: Найти значение выражения Y=4(7a/4+b). Для операций умножения и деления использовать сдвиг влево и вправо. Исходные данные считать из файла А, а результат записать в файл В.
Задание 2
Для заданного числа выполнить действия, используя логические побитовые операции. Оформить вывод результата каждой операции в виде двоичных и десятичных кодов.
число: 125; Операции:
Выделить: 1,2,3 бит; Обнулить: 3,4 бит; Установить: 5 бит; Инвертиро-вать: 6,7 бит.
Заранее большое спасибо!
Отправлен: 06.01.2008, 01:21
Вопрос задал: Vitaln2 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Maksim Trofimov
Здравствуйте, Vitaln2!
Задание 2: Для вывода десятичного числа в двоичном представлении надо написать свою функцию...Далее код на C. Вывод результатов в шестнадцатиричной системе счисления.
#include <stdio.h>
int main(void)
{
const unsigned num = 125u; // 1111101
unsigned res;
unsigned mask;
Задание 1:
//Умножение числа op1 на число op2
int mul(int op1, int op2)
{
int z = 0, i;
for(i = 0; i < op2; i++)
z+= op1 << 0;
return z;
}
Деление чуть сложнее...
Удачи...
Ответ отправил: Maksim Trofimov (статус: 4-ый класс)
Ответ отправлен: 06.01.2008, 08:00 Оценка за ответ: 5
Вопрос № 117.149
Здравтсвуйте, уважаемые эксперты!
Нужно написать программу, которая на рабочем столе текущего пользователя создавала бы пустой тектовый файл. Всем известно, что папка "Рабочий стол" находится в директории C:Documents and Settings<ИМЯ_ПОЛЬЗОВАТЕЛЯ>. Каким образом можно получить имя текущего пользователя компьютера? Нам же нужно знать полный путь к создаваемому файлу!?
Отправлен: 06.01.2008, 01:47
Вопрос задал: X-men (статус: 3-ий класс)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: CruelHity
Здравствуйте, X-men!
Сущ. Спец функция SHGetSpecialFolderLocation для нахождения необходимых папок!
Вот пример:
#include "windows.h"
#include "Shlobj.h"
#include "iostream"
using namespace std;
В функцию SHGetSpecialFolderLocation передается константа, которая характеризует имя какой папки нужно получить и возвращает указатель на данные (pidl), на основе которого используя функцию SHGetPathFromIDList можно получить само имя. Вот описания функций:
Ответ отправил: CruelHity (статус: 6-ой класс)
Ответ отправлен: 06.01.2008, 02:07 Оценка за ответ: 5
Отвечает: Aristos
Здравствуйте, X-men!
Вам поможет функция SHGetSpecialFolderPath. Для её использования необходимо подключить заголовочный файл <shlobj.h> и библиотеку shell32.lib.
Пример использования в приложении.
ps: прототип:
BOOL SHGetSpecialFolderPath(HWND hwndOwner, LPTSTR lpszPath, int nFolder, BOOL fCreate);
Приложение:
--------- нет ничего невозможного
Ответ отправил: Aristos (статус: 9-ый класс)
Ответ отправлен: 06.01.2008, 02:07 Оценка за ответ: 5
Отвечает: Евсюков Виталий Евгеньевич
Здравствуйте, X-men!
Мое решение приведено в приложении.
Приложение:
--------- I Aear can ve na Mar
Ответ отправил: Евсюков Виталий Евгеньевич (статус: 2-ой класс)
Ответ отправлен: 06.01.2008, 12:39 Оценка за ответ: 4 Комментарий оценки: Если мне не изменяет память, то это конструкции языка Delphi... Или я не прав?! А этот раздел всё же посвящен программированию на языке C.
Вопрос № 117.208
Уважаемые эксперты!Помогите пожалуйста с программой!(Visual Studio6-консольн.прил-С):
Для хранения данных о цветных планшетных сканерах описать структуру вида:
struct scan_info {
char model[25]; // наименование модели
int price; //цена
double x_size; //горизонтальный размер области сканирования
double y_size; //вертикальный размер области сканирования
int optr; //оптическое разрешение
int grey; //число градаций серого
};
Написать функцию, которая запрашивает количество сканеров, информация о которых будет вводиться, динамически выделять память под массив структур соответствующего размера и заполняет его данными в режиме диалога (с клавиатуры). При этом имя сканера может содержать пробелы.
Написать функцию, которая записывает данный массив в создаваемый бинарный файл. Если цена сканера меньше 200, то данные об этом сканере в файл не записываются. Информация об остальных сканерах помещается в бинарный файл, причем сначала пишутся данные о всех сканерах, имя которых начинается с заглавной буквы, а затем – с прописной.
Структура файла: в первых четырех байтах размещается значение типа long, определяющее количество сделанных в файл записей; далее без пропусков размещаются записи о сканерах.
Привести пример программы, создающей файл с данными о сканерах и осуществляющей вывод на дисплей данных о требуемой записи (либо всех, либо по номеру).
Все необходимые данные для функции должны передаваться им в качестве параметров. Использование глобальных переменных в функциях не допускается.
Отвечает: Ross
Здравствуйте, Есякова Наталья Генадиевна!
Вот решение. Оно правда оказалось чуть больше чем я ожидал :(... Вобщем, если чтото будет неясно, стучитесь в icq
Приложение:
--------- Доступно только то, что видимо (c) Б. Керниган
Ответ отправил: Ross (статус: Студент)
Ответ отправлен: 08.01.2008, 23:36 Оценка за ответ: 5
Вопрос № 117.210
Помогите пожалуйста написать код программы на C++.
Дан массив целых чисел, состоящий из 20 элементов. Найти самый большой и самый маленький элемент и вывести их значения на экран.
Отвечает: Евсюков Виталий Евгеньевич
Здравствуйте, Александр Крупнов!
о_О
Это же сложнейшая задача!)))
Вот кусок кода
min = a[0];
max = a[0];
// n - размерность массива
for (i=1;i<n;i++) {
if (a[i] > max) max = a[i];
if (a[i] < min) min = a[i];
}
--------- I Aear can ve na Mar
Ответ отправил: Евсюков Виталий Евгеньевич (статус: 2-ой класс)
Ответ отправлен: 06.01.2008, 15:54 Оценка за ответ: 4 Комментарий оценки: хотелось бы немного поподробнее, но все равно спасибо!+
Отвечает: Maksim Trofimov
Здравствуйте, Александр Крупнов!
#include <stdio.h>
int main(void)
{
int arr[] = {34,1,1,2,3,4,5,6,7,8,9,0,12,12,45,65,23,87,54,89};
int min = arr[0]; // начальное значение для мин числа
int max = arr[0]; // начальное значение для макс числа
unsigned j;
// бежим по массиву и сравниваем его каждый элемент
// с макс числом(переменной max), если он больше прежнего макс. числа,
// то присваемаем это значение переменной max. Точно
// также с нахождением мин. числа.
for(j = 0; j < 20; j++)
{
if(arr[j] > max)
max = arr[j];
if(arr[j] < min)
min = arr[j];
}
printf("max: %d
min: %d
", max, min);
return 0;
}
Ответ отправил: Maksim Trofimov (статус: 4-ый класс)
Ответ отправлен: 06.01.2008, 16:14 Оценка за ответ: 3 Комментарий оценки: конечный результат не выводится на экран(по крайней мере, если компилировать через Dev-C++). Если вам не трудно, подскажите почему.
Отвечает: Djec
Здравствуйте, Александр Крупнов!
Решение задачи в приложении: