Quantcast
Channel: Форум программистов и сисадминов Киберфорум
Viewing all 519017 articles
Browse latest View live

Сканер штрих-кодов - Python для начинающих

$
0
0
Добрый вечер. Кто-нибудь работал со сканерами штрих-кодов в python? Использую модели Mercury CL-200/CL-800 и CL-2300 p2d.
пример такого когда считывания
:

import serial

ser = serial.Serial('COM4', 9600)  #Открытие последовательного порта
print(ser.name)
#line=ser.read(10)                  #Считываем с определнным размером
#print(line)

line = ser.readline()              #Считываем данные(один раз)
print(line)

##while True:                       
##    line = ser.readline()
##    print(line)

##    line=ser.read(10)
##    print(line)

Собственно сам вопрос. Вопрос такой почему на модели CL-2300 не считывает методом readline() а на другой модели все ок считывает. На модели CL-2300 считывает только методом read(),что то подсказывает что этот сканер работает на точность и нужно обязательно сразу задать количество символов, то есть read(10) но ведь штриходы с разным количеством символов бывают.Как быть?

В чем ошибка программы? - Pascal (Паскаль)

$
0
0
Она не видит массивов и не выполняет основное условие задачи
(Даны два вектора разной размерности А(10),В(15). Написать подпрограмму, определяющую количество положительных, отрицательных и нулевых элементов каждого вектора) использовав процедуры
:

PROGRAM lab6;
uses crt;
const kogr=10;
const togr=15;
Type mass=array[1..kogr,1..togr]of integer;
 var
 i,n,s:integer;
 pol,otr,nl:integer;
 a,b:mass;
 
procedure kolv1(ima_mass:string; var s:integer;ogr:integer);
begin
repeat
Writeln('Введите размерность массива <',ima_mass,'>, не больше',ogr);
readln(s);
if (s<=1) or (s>ogr) then
writeln('ошибка ввода');
until (s>1) and (s<=ogr);
end;


  procedure vvod(im_mass:string; s:integer; var mas:mass; i,n:integer);
  begin
  writeln('Ввод элементов массива <',im_mass,'>');
  Writeln('Введите массив',s,'*',s);
  For i:=1 to s do
  For n:=1 to s do
  readln(mas[i,n]);
  end;
 
 
 
procedure schet(s:integer; var mm:mass; i:integer);
begin
otr:=0;
pol:=0;
nl:=0;
For i:=1 to s do begin
readln (i);
If i<0 then otr:=otr+1;
If i>0 then pol:=pol+1;
If i=0 then nl:=nl+1;
end;
end;

Procedure vivod(s:integer; var n,i:integer; mm:mass);
begin
 for i:=1 to s do
 begin
 for n:=1 to s do
 write(mm[i,n]:4);
 writeln;
 end;
 end;

 begin
 clrscr;
 writeln('Программа определяет кол-во полож-ых,отриц-ых и нулевых элементов');
 kolv1('a',n,kogr);
 kolv1('b',i,togr);
 vvod('a',s,a,i,n);
 readln(i,n);
 vvod('b',s,b,i,n);
 readln(i,n);
 begin
 writeln('Исходный массив (B)');
 vivod(s,n,i,b);
 writeln(b);
 end;
 begin
 writeln('Исходный массив (A)');
 vivod(s,n,i,a);
 writeln(a);
 end;
end.

Определенный интеграл методом Симпсона - PascalABC.NET

$
0
0
Нормально ли, что у площади по формуле Ньютона и метода Симпсона идентичные значения? Как можно исправить. Заранее спасибо . Вот код:

uses crt;
var y,x,s,h,a,b:real;
k:integer;
n:byte;
function f(x:real):real;
begin
f:=1*(x*x*x)+0*(x*x)+(-4)*x+12; //Заданная функция
end;
function f2(x:real):real;
begin
f2:=(x*x*x*x)/4 - 2*(x*x) + 12*x; //Первообразная
end;
function simpson( a,b:real; k:integer):real;
var h,x,s:real;
begin
h:=(b-a)/k;
s:=0;x:=a+h;
while x < b do
begin
s:=s+4*f(x);
x:=x+h;
s:=s+2*f(x);
x:=x+h;
end;
s := h/3*(s+f(a)-f(b));
simpson:=s;
end;
begin
repeat
writeln(' 1 - Вывести задание');
writeln(' 2 - Ввод границ интегрирования , количества отрезков');
writeln(' 3 - Вычисление шага функции');
writeln(' 4 - Вычисление площади функции');
writeln(' 5 - Определение погрешности');
writeln(' 0 - Выход');
writeln(' Выберите действие:');
readln(n);
clrscr;
case n of
1:writeln('Реализовать программу вычисления площади фигуры методом Симпсона, ограниченной кривой 1*(x*x*x)+0*(x*x)+(-4)*x+12');
2:begin
writeln(' Введите границы и количество отрезков');
readln(a,b,k);
end;
3:writeln(' Шаг равен:', (b-a)/k);
4:begin
y:=f2(b)-f2(a);
writeln(' Площадь по формуле Ньютона-Лейбница равна: ' ,y);
writeln(' Площадь по формуле Симпсона равна: ' , simpson(a,b,k));
end;
5:begin
writeln(' Абсолютная погрещность равна: ' ,abs ( y-simpson(a,b,k) ) );
writeln(' Относительная погрешность равна: ' , abs( (y-simpson(a,b,k) )/y ) );
end;
end;
until n=0;
end.

Суммирование стобцов таблицы - JavaScript для начинающих

$
0
0
Есть 2 таблицы вида:
:

<form name = "View">
<table>
<tr>
    <td><input name = "test_1" class="my_class" id = "sum_1"></td>
    <td><input name = "test_2" class="my_class" id = "sum_2"></td>
    <td><input name = "test_3" class="my_class" id = "sum_3"></td>
</tr>
</table>
<table>
<tr>
    <td><input type = "text" name = "zzz_sum_1" class="class_test_n" value = "1"</td>
    <td><input type = "text" name = "ppp_sum_2" class="class_test_p" value = "2"</td>
    <td><input type = "text" name = "nnn_sum_3" class="class_test_n" value = "3"</td>
</tr>
<tr>
    <td><input type = "text" name = "zzz_sum_1" class="class_test_n" value = "6"</td>
    <td><input type = "text" name = "ppp_sum_2" class="class_test_p" value = "7"</td>
    <td><input type = "text" name = "nnn_sum_3" class="class_test_n" value = "8"</td>
</tr>
</table>
</form>

Как просуммировать каждый столбец из второй таблицы (таблица значений) учитывая, что атрибут "name" каждого input -а содержит в себе id input-ового элемента для подсчета суммы ?

Задачка (загадка) на расшифровку - Криптография

$
0
0
Привет всем!

Есть загадка - текст (во вложении) зашифрован неизвестным шифром, при этом возможно слова могут идти зеркально (справа налево), а также возможно другое отзеркаливание. Первое слово скорей всего "Мы".

Помогите разгадать, pls!

Изображения
Тип файла: jpg IMG_20191211_125826__01~7.jpg (44.7 Кб)

Чему равна интегральная функция Лапласа при значении 9 - Статистика, теория вероятностей

$
0
0
Чему равна интегральная функция Лапласа при значении 9 и 14?
Видел табличные значения, они не совсем точные(

Добавлено через 3 часа 15 минут
где можно найти таблицу Лапласа больше 5?

Коллизия this объекта и this jQuery - jQuery

$
0
0
Здравствуйте.
:

var objs = [];
$(".box").each(function() {
        var obj = {
                counter: 0,
                handleEvent: $(this).on("click", function(e) {
                        console.log("click");
                        this.counter++;
                        console.log(this.counter);
                })
        };
        objs.push(obj);
});

В функции клика this jQuery перекрыл this объекта.
В принципе могу переписать по другому, но стало интересно - можно ли как-то внутри $(this).on("click", function(e) {}) воспользоваться this объекта?

Расчёт времени работы и электронные микросхемы - Электроника для начинающих

$
0
0
Всем привет! Плохо знаю электронику, хотел бы уточнить пару простейших вопросов у знающих людей.

Вопрос № 1:
Правильно ли выполнен расчёт времени работы светодиодной ленты от батареек.

1) Энергопотребление светодиодной ленты: 2.88 Вт/м
Используется 0,06м. Общее энергопотребление, в таком случае, составит: 0,1728 Вт/м

P = U * I
Где:
P - мощность;
U - напряжение;
I - сила тока;

Рабочий светодиодной ленты составит: 32 мА



2) Ёмкость батарейки GP Super cоставляет: 2000 мА.
Используется 3 батарейки. Общая ёмкость, в таком случае, составит: 6000 мА

t = C / Iн
Где:
t – время, ч;
C – ёмкость;
Iн – ток потребления (нагрузки);

Время работы светодиодной ленты, указанной в п.1, составит: 130 ч, с учётом того, что при увеличении нагрузки, увеличивается и скорость разряда батарейки.




Вопрос № 2:
На прикреплённом фото нарисована схема с сенсорным диммером и мосфетом. Также я обозначил три диода, расположенных на микросхемках.
Много ли потребляют тока эти светодиоды, сильно ли это влияет на время работы? Для меня это крайне важно, так как всё это работает от трёх батареек, указанных в вопросе № 1.
Можно ли просто выпаять их и сделать перемычку? Знаю о том, что диоды предовращают ЭДС самоиндукции. Выполняют ли они здесь такую же функцию?

Всем заранее спасибо!

Изображения
Тип файла: jpg 1.jpg (85.6 Кб)

Как сделать запрос? - MongoDB

$
0
0
Сделал БД в mongoDB
Подскажите пожалуйста как сделать запросы на эти несколько пунктов :
1. Вывести информацию о студентах, фамилии которых начинаются на букву К.
2. Вывести фамилии студентов номер зачетной которых заканчивается на 7.
3. Выдать в алфавитном порядке список 351 группы и номера зачеток.

Был бы очень благодарен

Программирование на языке с#! Буду очень благодарен) - C# Windows Forms

$
0
0
Организовать в Windows-приложении ввод и вывод матриц - двумерных массивов арифметического типа A,B и C одинакового размера. Получить матрицу D, элементы которой вычисляются по формуле dij=max{aij,(bij+cij)}.

Матрицы я создал и перенес данные в масив. Не могу сделать последнюю часть работы ( получить D). Чем сможете... хэлпаните.
Button4 - создание матрицы D

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace _7
{
public partial class Form1 : Form
{
int n = 0, m = 0;
double[,] masA, massB, massC, massD;
public Form1()
{
InitializeComponent();
}
private void AddColumns(int m, DataGridView dgv)
{
DataGridViewColumn colamn;
for (int i = 0; i < m; i++)
{
colamn = new DataGridViewTextBoxColumn();
colamn.DataPropertyName = "Столбец " + i.ToString();
colamn.Name = "Столбец " + i.ToString();
dgv.Columns.Add(colamn);
}
}
private void AddRows(int n, DataGridView dgv)
{
for (int i = 0; i < n; i++)
{
dgv.Rows.Add();
dgv.Rows[i].HeaderCell.Value = "Строка " + i.ToString();
}
}


private void button1_Click(object sender, EventArgs e)
{
m = Convert.ToInt32(textBox1.Text);
n = Convert.ToInt32(textBox2.Text);
masA = new double[n, m];
massB = new double[n, m];
massC = new double[n, m];
massD = new double[n, m];
dataGridView1.Columns.Clear();
dataGridView2.Columns.Clear();
dataGridView3.Columns.Clear();
AddColumns(m, dataGridView1);
AddRows(n, dataGridView1);
AddColumns(m, dataGridView2);
AddRows(n, dataGridView2);
AddColumns(m, dataGridView3);
AddRows(n, dataGridView3);
}


private void button3_Click(object sender, EventArgs e)
{
this.Close();

}

private void button4_Click(object sender, EventArgs e)
{
string elem = "";
bool correct = true;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
{
try
{

elem = dataGridView3.Rows[i].Cells[j].Value.ToString();
masA[i, j] = Convert.ToDouble(elem);
label14.Text = " ";

}
catch
{
label14.Text = "Значение элемента " + "A[" + i.ToString() + "," + j.ToString() + "]" + " не корректно.Повторите ввод";
dataGridView3.Rows[i].Cells[j].Selected = true;

return;
}

}
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
{
do
{
correct = true;
try
{
elem = dataGridView2.Rows[i].Cells[j].Value.ToString();
massB[i, j] = Convert.ToDouble(elem);
label15.Text = " ";
}
catch
{
label15.Text = "Значение элемента " + "B[" + i.ToString() + "," + j.ToString() + "]" + " не корректно.Повторите ввод";
dataGridView2.Rows[i].Cells[j].Selected = true;
correct = false;
return;
}

} while (!correct);
}
{
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
{
do
{
correct = true;
try
{
elem = dataGridView1.Rows[i].Cells[j].Value.ToString();
massB[i, j] = Convert.ToDouble(elem);
label16.Text = " ";
}
catch
{
label16.Text = "Значение элемента " + "C[" + i.ToString() + "," + j.ToString() + "]" + " не корректно.Повторите ввод";
dataGridView1.Rows[i].Cells[j].Selected = true;
correct = false;
return;
}
} while (!correct);
}
}
}

private void button2_Click(object sender, EventArgs e)
{

}
}
}

MS SQL Передать изменения в datagrid, но GetChanges() возвращает null - C#: Базы данных, ADO.NET

$
0
0
CustomersGridView содержит данные из БД, таблицы Customers. При нажатии на кнопку на форме добавленные, измененные, удаленные строки должны отображаться в ChangerRowsGridView, однако метод GetChanges() возвращает null при том, что изменения в самой БД фиксируются. Почему?

:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Task3
{
    public partial class Form1 : Form
    {
        DataSet ShopDB;
        SqlDataAdapter adapter;
        DataTable Customers;
        DataTable Changes;
        SqlCommandBuilder cmdBuild;
        string fillSql = "select * from customers";
        string connStr = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
        public Form1()
        {
            Customers = new DataTable("Customers");
            ShopDB = new DataSet("ShopDB");
            DataColumn CustomerNo = GetNewColumn("CustomerNo", Type.GetType("System.Int32"), true, false, true);
            DataColumn FName = GetNewColumn("FName", Type.GetType("System.String"));
            DataColumn LName = GetNewColumn("LName", Type.GetType("System.String"));
            DataColumn MName = GetNewColumn("MName", Type.GetType("System.String"), false, true);
            DataColumn Address1 = GetNewColumn("Address1", Type.GetType("System.String"));
            DataColumn Address2 = GetNewColumn("Address2", Type.GetType("System.String"), false, true);
            DataColumn City = GetNewColumn("City", Type.GetType("System.String"));
            DataColumn Phone = GetNewColumn("Phone", Type.GetType("System.String"));
            DataColumn DateInSystem = GetNewColumn("DateInSystem", Type.GetType("System.DateTime"), false, true);
            AddColumns(Customers, CustomerNo, FName, LName, MName, Address1, Address2, City, Phone, DateInSystem);
            Customers.PrimaryKey = new DataColumn[] { Customers.Columns["CustomerNo"] };
            ShopDB.Tables.Add(Customers);
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                try
                {
                    conn.Open();
                   
                    adapter = new SqlDataAdapter(fillSql, conn);
                    adapter.Fill(ShopDB, "Customers");
                    CustomersGridView.DataSource = ShopDB.Tables["Customers"];
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                finally
                {
                    conn.Close();
                }
            }
        }
        private DataColumn GetNewColumn(string colName, Type colType, bool unique = false, bool canNull = false, bool ai = false, int aiSeed = 1, int aiStep = 1)
        {
            DataColumn col = new DataColumn(colName, colType);
            col.Unique = unique == true ? true : false;
            col.AllowDBNull = canNull == true ? true : false;
            col.AutoIncrement = ai == true ? true : false;
            if (ai)
            {
                col.AutoIncrementSeed = aiSeed;
                col.AutoIncrementStep = aiStep;
            }
            return col;
        }

        private void AddColumns(DataTable dt, params DataColumn[] ps)
        {
            foreach (DataColumn col in ps)
            {
                dt.Columns.Add(col);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            using(SqlConnection conn = new SqlConnection(connStr))
            {
                try
                {
                    conn.Open();
                    adapter = new SqlDataAdapter(fillSql, conn);
                    cmdBuild = new SqlCommandBuilder(adapter);
                    adapter.Update(ShopDB, "Customers");
                    ShopDB.AcceptChanges();
                    Changes = ShopDB.Tables["Customers"].GetChanges();
                    ChangerRowsGridView.DataSource = Changes;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                finally
                {
                    conn.Close();
                }
            }
        }
    }
}


Изображения
Тип файла: jpg EnWOeQ4AtXg.jpg (65.2 Кб)
Вложения
Тип файла: rar Task3.rar (779.4 Кб)

Чтение одного файла несколько раз - Python для начинающих

$
0
0
Просто 1 раз читается, а больше не хочет. Просто открытие файла при помощи r, чтение при помощи file.read()

Множество - С++ для начинающих

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


class Set
{
private:
unsigned int size;
unsigned int* array;
public:
Set() { size = 0; array = new unsigned int[size]; } // конструктор

Set(int s) {
size = s; array = new unsigned int[size]; // конструктор с аргументами
for (unsigned i = 0; i < size; i++)
array[i] = 0;
}

Set(const Set& ob) // конструктор копии
{
size = ob.size;
array = new unsigned int[size];
for (unsigned int i = 0; i < size; i++)
array[i] = ob.array[i];
}

~Set() { delete[] array; } // деструктор
void Enter(); // ввод
void Show(); // вывод

};

void Set::Enter()
{
cout << "Введите размер " << endl;
cin >> size;
array = new unsigned int[size];
for (unsigned int i = 0; i < size; i++)
{
cout << "Введите элемент " << i + 1 << ") ";
cin >> array[i];

}
}

void Set::Show()
{
cout << "Множество " << endl;
for (unsigned int i = 0; i < size; i++)
cout << array[i] << " ";
cout << endl;
}

Задача на НОД - Python для начинающих

$
0
0
Прошу решение этой задачи, точнее, код.

Условие: Дано натуральное число N. Требуется представить его в виде суммы двух натуральных чисел A и B таких, что НОД (наибольший общий делитель) чисел A и B — максимален.

Спасибо

.NET 4.x Проверьте выполнение задания - C# для начинающих

$
0
0
Проверьте выполнение задания и скажите как перевести дробное число 348,56 в двоичную систему ??

само задание
Вложение 1094343

выполнение
:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace pz2
{
    class Program
 
    {
        static void Main(string[] args)
        {
 
            String number1 = "110000111";
            String number2 = "157";
            String number3 = "45FFD";
            String number4 = "671";
            String number5 = "198";
            String number6 = "348,56";
            int fromBase = 2;
            int fromBas = 8;
            int fromBa = 16;
            int toBase = 10;
 
 
            String result1 = Convert.ToString(Convert.ToInt32(number1, fromBase), toBase);
            Console.WriteLine("с двоичной в десятичную :" + result1);
 
            String result2 = Convert.ToString(Convert.ToInt32(number2, fromBas), toBase);
            Console.WriteLine("c восьмеричной в десятичную :" + result2);
 
            String result3 = Convert.ToString(Convert.ToInt32(number3, fromBa), toBase);
            Console.WriteLine("с шестнадцатеричной в десятичную :" +result3);
 
            String result4 = Convert.ToString(Convert.ToInt32(number4, toBase), fromBas);
            Console.WriteLine("c десятичной в восьмеричную :" + result4);
 
            String result5 = Convert.ToString(Convert.ToInt32(number5, toBase), fromBa);
            Console.WriteLine("с десятичной в шестнадцати :" + result5);
 
            Console.ReadKey();
        }
    }
}


Изображения
Тип файла: png Безымяннвывывыый.png (13.0 Кб)

нужно сделать таску - C++

$
0
0
Вам задан массив a, состоящий из n целых чисел.

Вы можете удалить не более одного элемента из этого массива. Таким образом, после этой операции длина массива равна либо n−1, либо n.

Ваша задача — посчитать максимально возможную длину строго возрастающего последовательного подмассива получившегося массива.

Напомним, что последовательным подмассивом a с индексами от l до r называется a[l…r]=al,al+1,…,ar. Массив a[l…r] называется строго возрастающим, если al<al+1<⋯<ar.

Входные данные
Первая строка входных данных содержит одно целое число n (2≤n≤2⋅105) — количество элементов в a.

Вторая строка входных данных содержит n целых чисел a1,a2,…,an (1≤ai≤109), где ai равно i-му элементу a.

Выходные данные
Выведите одно целое число — максимально возможную длину строго возрастающего последовательного подмассива массива a после удаления не более одного элемента.

Примеры
входные данные
5
1 2 5 3 4
выходные данные
4


входные данные
2
1 2
выходные данные
2


входные данные
7
6 5 4 3 2 4 3
выходные данные
2

Примечание
В первом примере можно удалить a3=5. Тогда получившийся массив будет равен [1,2,3,4] и длина его наибольшего возрастающего подмассива будет равна 4.

Дано n вещественных чисел. Определить, образуют ли они возрастающую последовательность - PascalABC.NET

$
0
0
Дано n вещественных чисел. Определить, образуют ли они возрастающую последовательность.

Задания на логику - Информатика

MS SQL Получить список таблиц из БД MS SQL Server - C#: Базы данных, ADO.NET

$
0
0
Нашел только способ как получить таблицы если мы подключаем бд через sqlconnectionstring
У меня задача таже самая но я подключаю БД через EDM модель
и когда я создаю DBEntities я могу через '.' обратится к таблицам этой бд, а мне надо получить их список
подскажите как. заранее спасибо!

Задача DLP - C (Си)

$
0
0
Решаю задачу дискретного логарифмирования, на маленьких числах алгоритм работает, на больших числах объём вычисления довольно большой. Не подскажите как оптимизировать лучше мой код:

:


int Shanks(int n, int p, int l){
  int m = (int)sqrt((double)p) + 1;

  int g, h, mod, inv,s;
  inv = getInverse(n,p);
  s = power(inv, m, p);

  for(int i = 1; i < m; i++){
    mod = power(s, i, p);
    h = l*mod % p;
    for(int j = 1; j < m; j++){
        g = power(n,j,p);
      if(h == g){
        printf(“Result: %d.”, i*m + j);
        return i*m+j;
      }
    }
  }

Не подскажите как реализовать для long long типа к примеру;)
Viewing all 519017 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>