#include <stdio.h> #include <stdlib.h> #define SMAX 100 typedef struct SPNode { int i,j,v; }SPNode; struct sparmatrix { int rows,cols,terms; SPNode data [SMAX]; }; sparmatrix CreateSparmatrix() { sparmatrix A; printf("\n\t\t請輸入稀疏矩陣的行數(shù),列數(shù)和非零元素個數(shù)(用逗號隔開):"); scanf("%d,%d,%d",&A.cols,&A.terms); for(int n=0;n<=A.terms-1;n++) { printf("\n\t\t輸入非零元素值(格式:行號,列號,值):"); scanf("%d,%d,%d",&A.data[n].i,&A.data[n].j,&A.data[n].v); } return A; } void ShowSparmatrix(sparmatrix A) { int k; printf("\n\t\t"); for(int x=0;x<=A.rows-1;x++) { for(int y=0;y<=A.cols-1;y++) { k=0; for(int n=0;n<=A.terms-1;n++) { if((A.data[n].i-1==x)&&(A.data[n].j-1==y)) { printf("%8d",A.data[n].v); k=1; } } if(k==0) printf("%8d",k); } printf("\n\t\t"); } } void sumsparmatrix(sparmatrix A) { SPNode *p; p=(SPNode*)malloc(sizeof(SPNode)); p->v=0; int k; k=0; printf("\n\t\t"); for(int x=0;x<=A.rows-1;x++) { for(int y=0;y<=A.cols-1;y++) { for(int n=0;n<=A.terms;n++) { if((A.data[n].i==x)&&(A.data[n].j==y)&&(x==y)) { p->v=p->v+A.data[n].v; k=1; } } } printf("\n\t\t"); } if(k==1) printf("\n\t\t對角線元素的和::%d\n",p->v); else printf("\n\t\t對角線元素的和為::0"); } int main() { int ch=1,choice; struct sparmatrix A; A.terms=0; while(ch) { printf("\n"); printf("\n\t\t 稀疏矩陣的三元組系統(tǒng) "); printf("\n\t\t*********************************"); printf("\n\t\t 1------------創(chuàng)建 "); printf("\n\t\t 2------------顯示 "); printf("\n\t\t 3------------求對角線元素和"); printf("\n\t\t 4------------返回 "); printf("\n\t\t*********************************"); printf("\n\t\t請選擇菜單號(0-3):"); scanf("%d",&choice); switch(choice) { case 1: A=CreateSparmatrix(); break; case 2: ShowSparmatrix(A); break; case 3: SumSparmatrix(A); break; default: system("cls"); printf("\n\t\t輸入錯誤!請重新輸入!\n"); break; } if (choice==1||choice==2||choice==3) { printf("\n\t\t"); system("pause"); system("cls"); } else system("cls"); } }
上傳時間: 2020-06-11
上傳用戶:ccccy
LED燈封裝Altium Designer AD PCB封裝庫2D3D元件庫文件PCB Library : LED.PcbLibDate : 2020/12/29Time : 16:50:29Component Count : 49Component Name-----------------------------------------------LED 1W/3WLED 1W/3W-WLED 3mm-2PLED 3MM-BLED 3MM-GLED 3MM-RLED 3MM-WLED 3MM-YLED 3MM-YCLED 5MM-BLED 5MM-GLED 5MM-RLED 5MM-WLED 5MM-YLED 5MM-YCLED 0603-RGLED 0603BLED 0603GLED 0603RLED 0603WLED 0603YLED 0805BLED 0805GLED 0805RLED 0805WLED 0805YLED 1206BLED 1206GLED 1206RLED 1206WLED 1206YLED 3528-2PinLED 3528-4PinLED 5050LED 5630LED 5730-VLED F234-BLED F234-GLED F234-RLED F234-WLED F234-YLED F257-BLED F257-GLED F257-RLED F257-WLED F257-YLED SH-5MM-WLED SH-8MMLED SH-8MM-W
標簽: led 封裝 altium designer pcb
上傳時間: 2022-03-11
上傳用戶:
STM32F103開發(fā)板 DHT11溫濕度DS18B20 氣體MQ-2光敏聲控雨滴傳感器實驗程序**--------------------------------------------------------------------------------------------------------** Created by: FiYu** Created date: 2015-12-12** Version: 1.0** Descriptions: DHT11溫濕度傳感器實驗 **--------------------------------------------------------------------------------------------------------** Modified by: FiYu** Modified date: ** Version: ** Descriptions: ** Rechecked by: **********************************************************************************************************/#include "stm32f10x.h"#include "delay.h"#include "dht11.h"#include "usart.h"DHT11_Data_TypeDef DHT11_Data;/************************************************************************************** * 描 述 : GPIO/USART1初始化配置 * 入 參 : 無 * 返回值 : 無 **************************************************************************************/void GPIO_Configuration(void){ GPIO_InitTypeDef GPIO_InitStructure; /* Enable the GPIO_LED Clock */ RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO , ENABLE); GPIO_DeInit(GPIOB); //將外設(shè)GPIOA寄存器重設(shè)為缺省值 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽輸出 GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_DeInit(GPIOA); //將外設(shè)GPIOA寄存器重設(shè)為缺省值 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //推挽輸出 GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //浮空輸入 GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_SetBits(GPIOB , GPIO_Pin_9); //初始狀態(tài),熄滅指示燈LED1}/************************************************************************************** * 描 述 : 串口顯示實時溫濕度 * 入 參 : 無 * 返回值 : 無 **************************************************************************************/void DHT11_SCAN(void){ if( Read_DHT11(&DHT11_Data)==SUCCESS) { printf("\r\n讀取DHT11成功!\r\n\r\n濕度為%d.%d %RH ,溫度為 %d.%d℃ \r\n",\ DHT11_Data.humi_int,DHT11_Data.humi_deci,DHT11_Data.temp_int,DHT11_Data.temp_deci); //printf("\r\n 濕度:%d,溫度:%d \r\n" ,DHT11_Data.humi_int,DHT11_Data.temp_int); } else { printf("Read DHT11 ERROR!\r\n"); }}/************************************************************************************** * 描 述 : MAIN函數(shù) * 入 參 : 無 * 返回值 : 無 **************************************************************************************/int main(void){ SystemInit(); //設(shè)置系統(tǒng)時鐘72MHZ GPIO_Configuration(); USART1_Init(); //初始化配置TIM DHT11_GPIO_Config(); // 初始化溫濕度傳感器PB1引腳初始時為推挽輸出 GPIO_ResetBits(GPIOB , GPIO_Pin_9); delay_ms(500); while(1) { GPIO_SetBits(GPIOB , GPIO_Pin_9); DHT11_SCAN(); //實時顯示溫濕度 delay_ms(1500); } }
上傳時間: 2022-05-03
上傳用戶:得之我幸78
AD濾波算法函數(shù)模塊說明: 一、該模塊包含濾波算法有:中位值濾波、中位值平均濾波、遞推平均濾波、一階滯后濾波。用戶可根據(jù)項目不同情況選用不同的濾波算法。1.1、中位值濾波:連續(xù)采樣N次(N取奇數(shù)),把N次采樣值按大小排列,取中間值為本次有效值。適用范圍能有效克服因偶然因素引起的波動干擾,對溫度、液位的變化緩慢的被測參數(shù)有良好的濾波效果。不過對流量、速度等快速變化的參數(shù)不宜。1.2、中位值平均濾波:連續(xù)采用N個數(shù)據(jù),去掉一個最大值和一個最小值,然后計算N-2個數(shù)據(jù)的算術(shù)平均值。適用范圍:對應(yīng)偶然出現(xiàn)的脈沖性干擾,可消除由于脈沖干擾所引起的采樣值偏差。但是測量速度較慢, 比較浪費RAM。1.3遞推平均濾波:把連續(xù)取N個采樣值看成一個隊列,隊列的長度固定為N,每次采樣到一個新數(shù)據(jù)放入隊尾,并扔掉原來隊首的一次數(shù)據(jù),把隊列中得N個數(shù)據(jù)進行算術(shù)平均運算,就可以獲得新的濾波結(jié)果。適用范圍:對周期性干擾有良好的抑制作用,平滑度高,適用于高頻振蕩的系統(tǒng)。缺點是靈敏度低,對偶然出現(xiàn)的脈沖性干擾的抑制作用較差,不易消除由于脈沖干擾所引起的采樣值偏差,不適用于脈沖干擾比較嚴重的場合。1.4、一階滯后濾波:對周期性干擾具有良好的抑制作用,適用于波動頻率較高得場合。缺點就是相位滯后,靈敏度低,滯后程度取決于a的大小,不能消除濾波頻率高于采樣頻率1/2的干擾信號。本次濾波結(jié)果result=(1-a)*本次采樣值+a*上次值。a=(0~1)
上傳時間: 2022-07-28
上傳用戶:
有向直線K中值問題 給定一條有向直線L以及L 上的n+1 個點x0<x1<x2<… <xn。有向直線L 上的每個點xi都有一個權(quán) w(xi) 每條有向邊 (xi,xi-1),也都有一個非負邊長d(xi,xi-1)。有向直線L 上的每個點xi 可以看作客戶,其服務(wù)需求量為w(xi) 。每條邊(xi,xi-1) 的邊長 , d(xi,xi-1) 可以看作運輸費用。如果在點xi 處未設(shè)置服務(wù)機構(gòu),則將點xi 處的服務(wù)需求沿有向邊轉(zhuǎn)移到點xj處服務(wù)機構(gòu)需付出的服務(wù)轉(zhuǎn)移費用為w(xi)*d(xi,xj) 。在點0 x 處已設(shè)置了服務(wù)機構(gòu),現(xiàn)在要在直線L上增設(shè)k處服務(wù)機構(gòu),使得整體服務(wù)轉(zhuǎn)移費用最小。
上傳時間: 2014-01-14
上傳用戶:manlian
有限期作業(yè)安排問題”描述如下:有n個任務(wù)J1,J2,...,Jn,每個任務(wù)Ji都有一個完成期限di,若任務(wù)Ji在它的期限di內(nèi)完成,則可以獲利Ci(1[i[n) 問如何安排使得總的收益最大(假設(shè)完成每一個任務(wù)所需時間均為一個單位時間).這個問題適合用貪心算法來解決,貪心算法的出發(fā)點是每一次都選擇利潤大的任務(wù)來完成以期得到最多的收益 但是對于本問題由于每一個任務(wù)都有一個完成的期限,因此在任務(wù)安排過程中除了考慮利潤Ci外,還要考慮期限di.
上傳時間: 2016-06-27
上傳用戶:s363994250
這是一個將n個樣本聚類到m個類別中 將n個樣本在m個類里如何分配輸出的遺傳算法代碼。 適應(yīng)度:sum(i=1_110)sum(j=1_20)【xi-vj】~2
上傳時間: 2014-08-09
上傳用戶:wkchong
給定n個節(jié)點xi(i=0,1,...,n-1)上的函數(shù)值yi=f[xi],用拉格朗日插值公式計算指定插值點t處的函數(shù)近似值z=f[t]
上傳時間: 2013-12-21
上傳用戶:小眼睛LSL
給定n個節(jié)點xi[i=0,1,...,n-1]上的函數(shù)值yi=f[xi],用拋物插值公式計算指定插值點t處的函數(shù)近似值z=f[t]
上傳時間: 2017-03-10
上傳用戶:chfanjiang
給定n個節(jié)點xi[i=0,1,...,n-1]上的函數(shù)值yi=f[xi],用連分式插值法計算指定插值點t處的函數(shù)近似值z=f[t]
上傳時間: 2014-01-10
上傳用戶:zycidjl
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1